DE69834640T2 - System und Verfahren zur Synchronisierung elektronischer Nachrichten über ein Netzwerk - Google Patents

System und Verfahren zur Synchronisierung elektronischer Nachrichten über ein Netzwerk Download PDF

Info

Publication number
DE69834640T2
DE69834640T2 DE69834640T DE69834640T DE69834640T2 DE 69834640 T2 DE69834640 T2 DE 69834640T2 DE 69834640 T DE69834640 T DE 69834640T DE 69834640 T DE69834640 T DE 69834640T DE 69834640 T2 DE69834640 T2 DE 69834640T2
Authority
DE
Germany
Prior art keywords
mail
store
synchronization
format
module
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.)
Revoked
Application number
DE69834640T
Other languages
English (en)
Other versions
DE69834640D1 (de
Inventor
J. Daniel Menlo Park MENDEZ
D. Mark Mercer Island RIGGINS
Prasad Santa Clara WAGLE
Christine Menlo Park YING
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.)
Good Technology Corp
Original Assignee
Visto Corp
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=25408591&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69834640(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Visto Corp filed Critical Visto Corp
Publication of DE69834640D1 publication Critical patent/DE69834640D1/de
Application granted granted Critical
Publication of DE69834640T2 publication Critical patent/DE69834640T2/de
Anticipated expiration legal-status Critical
Revoked legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • 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

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich allgemein auf Computernetzwerke und genauer gesagt stellt die vorliegende Erfindung ein System und ein Verfahren zum Synchronisieren elektronischer Post über ein Computernetzwerk bereit.
  • 2. Hintergrund des Standes der Technik
  • Datenkonsistenz ist für Computerbenutzer ein wesentlicher Gesichtspunkt. Beispielsweise riskiert ein Benutzer, wenn er mehrfache unabhängig modifizierbare Kopien eines Dokumentes hält, daß er eine veraltete Version benutzt. Zu dem Zeitpunkt, zu welchem der Benutzer eine Inkonsistenz feststellt, ist möglicherweise bereits eine Fehlkommunikation oder ein Datenverlust aufgetreten. Der Benutzer muß dann mehr Zeit mit dem Versuch verbringen, die inkonsistenten Versionen abzugleichen, und sich mit irgendwelchen fehlerhaften Kommunikationen befassen.
  • Die Probleme der Dateninkonsistenz verstärken sich noch, wenn Kopien eines Dokumentes nicht mehr zugänglich sind. Wenn beispielsweise mehrere Kopien eines Dokumentes an unterschiedlichen Netzwerkstellen gehalten werden, beeinträchtigen Netzwerksicherheitssysteme, wie z. B. die konventionelle Firewall-Technik, die Datenzugänglichkeit. D.h., ein Benutzer hat möglicherweise nur auf eine bestimmte dieser Netzwerkpositionen Zugriff. Ohne Zugriff auf die anderen Stellen kann der Benutzer keine Bestätigung erhalten, daß die Version an einer zugänglichen Stelle der aktuellste Entwurf ist.
  • Die Probleme der Datenkonsistenz und der Zugänglichkeit treten auf dem Gebiet der elektronischen Post (E-Mail) auf. Beispielsweise kann ein Benutzer eine E-Mail-Datenbank an seinem Arbeitsplatz betreiben. Auf der Basis von Sicherheitssystemen, die durch das Intranet am Arbeitsplatz implementiert sind, hat der Benutzer möglicherweise keinen Zugriff auf die Datenbank und kann weder E-Mails lesen, noch auf diese reagieren, bis er an seinen Arbeitsplatz zurückkehrt. Weiterhin hat ein Benutzer, der auf Reisen ist und der gerade an einem entfernt gelegenen Anschluß bzw. Terminal arbeitet, möglicherweise nicht die erforderlichen, speziellen Anwendungsprogramme, um die Sicherheitsschranken des Intranets zu passieren. Weiterhin ist der auf Reisen befindliche Benutzer damit belastet, eine Aufzeichnung aller Vorgänge und Passwords zu halten, um die Sicherheitsschranken des Systems an jedem Ort zu überwinden.
  • Diese Probleme werde noch weiter verstärkt, wenn E-Mail-Programme von unterschiedlichen Herstellern bzw. Verkäufern verwendet werden, welche unterschiedliche Protokolle implementieren. Beispielsweise arbeiten der E-Mail-Client des Netscape NavigatorTM und der E-Mail-Client von Outlook ExpressTM E-Mail jeweils über Computernetzwerke hinweg. Jeder E-Mail-Client ver wendet jedoch unterschiedliche Formate, speichert E-Mails in unterschiedlichen Dateien und implementiert unterschiedliche Protokolle. Demnach sind die E-Mails nicht einfach austauschbar.
  • Es besteht daher Bedarf an einem System und einem Verfahren, um Benutzer mit E-Mail-Konsistenz und Zugänglichkeit über ein Computernetzwerk hinweg zu versorgen.
  • Die US-A-5,647,002 (Brunson) beschreibt einen Mechanismus zum automatischen Synchronisieren einer Mailbox, die auf einem E-Mail-Server ruht bzw. abgelegt ist, mit einer Mailbox, die auf einem Server für Post in Form von Stimmen bzw. Sprache (Voicemail) beruht. Eine Synchronisierung wird bewirkt, indem eine entsprechende Nachricht in einer Mailbox für jede Nachricht erzeugt wird, die in der anderen Mailbox des Paares aus Mailboxen ankommt. Wenn die entsprechende Nachricht nicht die gesamte Information enthält, die von der ursprünglichen Nachricht getragen wurde, weil beispielsweise irgendwelche Information in der Ursprungsnachricht in einem Medium ausgedrückt ist oder ein Format hat, welches inkompatibel ist oder nicht durch Umwandlung in dem anderen System kompatibel gemacht werden kann, so wird eine teilweise Kopieranzeige für die entsprechende Nachricht erhoben und das Verhalten der Synchronisierung wird verändert, um die ursprünglichen Nachrichteninhalte zu schützen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Verschiedene Aspekte der Erfindung sind in den beigefügten Ansprüchen dargelegt.
  • Eine Ausführungsform der Erfindung stellt ein System mit einer E-Mail-Maschine bereit, um das geeignete Protokoll für das Holen einer E-Mail von einem Mailserver zu verwenden. Die E-Mail-Maschine und der kleinere Server können dasselbe Protokoll implementieren, beispielsweise das Postamtprotokoll (Post Office Protocol – POP 3), um miteinander zu kommunizieren. Auf Anforderung kann der erste Mail-Speicher Konfigurationsdaten senden, welche der E-Mail-Maschine das geeignete Protokoll anzeigen, das sich dann in angemessener Weise selber konfigurieren kann.
  • Das System kann weiterhin ein E-Mail-Synchronisationsmodul aufweisen, welches ein vorbestimmtes Kriterium verwendet, um festzustellen, ob die E-Mail an einen zweiten Mail-Speicher gesendet werden soll. Beispielsweise muß das E-Mail-Synchronisationsmodul keine E-Mail an den zweiten Mail-Speicher senden, wenn die E-Mail zuvor bereits gesendet wurde. Der zweite Mail-Speicher kann auf einem globalen Server angeordnet sein, der bei geeigneter Identifizierung und Authentisierung Benutzern, die umher reisen (Roaming) den HTML-Zugriff auf seine Inhalte gewährt.
  • Das System kann weiterhin ein Kommunikationsmodul zum Bereitstellen eines Kommunikationskanals bei dem zweiten Mail-Speicher enthalten. Wenn der zweiten Mail-Speicher durch eine Firewall geschützt wird, kann das Kommunikationsmodul autorisiert werden, um eine sichere Kommunikationsverbindung mit dem zweiten Speicher durch die Firewall hindurch bereitzustellen. Das System kann weiterhin eine Webmaschine enthalten, um das Hypertext-Übertragungsprotokoll (HTTP) zu verwenden, um die E-Mail über den Kommunikationskanal an den zweiten Mail-Speicher zu senden. Das System kann auf einem computerlesbaren Speichermedium gespeichert werden.
  • Mit anderen Worten kann eine Ausführungsform der Erfindung im weitesten Sinne so beschrieben werden, daß sie Einrichtungen zum Holen von E-Mail von einem Mailserver, Einrichtungen, die mit der Holeinrichtung verbunden sind, um ein vorbestimmtes Kriterium zu verwenden, um zu bestimmen, ob eine geholte E-Mail an einen zweiten Mail-Speicher gesendet werden soll, Einrichtungen, die mit der Verwendungseinrichtung verbunden sind, um einen Kommunikationskanal mit dem zweiten Mailserver bereitzustellen und Einrichtungen, die mit der Bereitstellungseinrichtung zum Senden einer E-Mail an den zweiten E-Mail-Speicher verbunden sind, enthält.
  • Eine Ausführungsform eines Verfahrens gemäß der Erfindung kann im weitesten Sinne beschrieben werden als eines, welches die Schritte bereitstellt, E-Mail von einem Mailserver unter Verwendung eines vorbestimmten Kriteriums zu holen, um zu bestimmen, ob eine geholte E-Mail an einen globalen Mail-Speicher gesendet werden soll, Bereitstellen eines Kommunikationskanals bei dem globalen Mail-Speicher und Senden der E-Mail an den zweiten Mail-Speicher.
  • Das System und das Verfahren verwenden in vorteilhafter Weise eine vertrauenswürdige dritte Stelle bzw. Partei, um die Synchronisierung von elektronischer Mail auf einem Netzwerk zu ermöglichen. Dementsprechend kann ein Benutzer, der beispielsweise einen Arbeitsplatz, einen Heim-Arbeitsplatz und den globalen Serverplatz behält, E-Mails über alle drei Plätze hinweg synchronisieren. Der umherreisende Benutzer kann daher auf E-Mails zugreifen und diese beantworten, während er von der adressierten Stellen entfernt ist. Da das System und das Verfahren über das Internet arbeiten, kann die Synchronisierung über irgendeine beliebige Distanz hinweg erfolgen. Da das System und das Verfahren eine Formatübersetzung umfassen, ist eine Verschmelzung von E-Mails zwischen unterschiedlichen Anwendungsprogrammen und unterschiedlichen Plattformen möglich. Weiterhin wirkt die typische Firewall, welche eingehende Kommunikationen im allgemeinen und einige ausgehende Protokolle verhindert, nicht als ein Hindernis für die E-Mail-Synchronisierung, da die Synchronisierung innerhalb der Firewall ausgelöst wird und allgemein freigeschaltete Protokolle, wie z. B. das Hypertext-Übertragungsprotokoll (HTTP) verwendet. Außerdem können das vorliegende System und Verfahren in einer von dem Client-Benutzer unbeeinflußten Weise arbeiten, da die bevorzugten Arbeitsweisen bzw. Einstellungen des Benutzers vorab eingestellt werden können.
  • KURZE BESCHREIBUNG DER FIGUREN
  • 1 ist ein Blockdiagramm, welches ein Computernetzwerk gemäß der vorliegenden Erfindung veranschaulicht.
  • 2 ist ein Blockdiagramm, welches Einzelheiten eines Dienstleistungsservers nach 1 veranschaulicht.
  • 3 ist ein Blockdiagramm, welches Einzelheiten des Desktopcomputers nach 1 veranschaulicht.
  • 4 ist ein Blockdiagramm, welches Einzelheiten eines Basissystems nach 1 veranschaulicht.
  • 5 ist ein Blockdiagramm, welches Einzelheiten des Synchronisierungsagenten nach 1 veranschaulicht.
  • 6 ist eine graphische Wiedergabe eines beispielhaften Lesezeichens in dem globalen Format.
  • 7 ist ein Flußdiagramm, welches ein Verfahren zum Synchronisieren, welches ein Verfahren zum Synchronisieren mehrerer Kopien eines Arbeitsraumelementes in einem sicheren Netzwerk veranschaulicht.
  • 8 ist ein Blockdiagramm, welches ein Computernetzwerk gemäß der vorliegenden Erfindung veranschaulicht.
  • 9 ist ein Blockdiagramm, welches Einzelheiten eines Client nach 8 veranschaulicht.
  • 10 ist ein Blockdiagramm, welches Einzelheiten des Basissystems nach 9 veranschaulicht.
  • 11 ist ein Blockdiagramm, welches Einzelheiten eines globalen Servers nach 8 veranschaulicht.
  • 12 ist ein Blockdiagramm, welches Einzelheiten des Synchronisierungsagenten nach 8 veranschaulicht.
  • 13 ist ein Blockdiagramm, welches Einzelheiten des entfernten Anschlusses bzw. Terminals nach 8 veranschaulicht.
  • 14 ist ein Flußdiagramm, welches ein Verfahren zum Synchronisieren elektronischer Post in einem Computernetzwerk veranschaulicht.
  • 15 ist ein Flußdiagramm, welches ein Verfahren für das Zugreifen auf elektronische Mail von dem globalen Server nach 8 veranschaulicht.
  • GENAUE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • 1 ist ein Blockdiagramm, welches ein Computernetzwerk 100 veranschaulicht, das einen ersten Knoten, wie z. B. einen entfernt gelegenen Computeranschluß bzw. ein entferntes Computerterminal 102 aufweist, welches über einen Kommunikationskanal 104, wie z. B. das Internet, mit einem globalen Server 106 verbunden ist. Der globale Server 106 ist seinerseits über den Kommunikationskanal 108, wie z. B. das Internet, mit einem zweiten Knoten, wie z. B. einem Local Area Network (LAN) 110 verbunden. Der globale Server 106 ist durch eine globale Firewall 112 geschützt und das LAN 110 ist durch eine LAN-Firewall 114 geschützt.
  • Das LAN 110 enthält einen Systembus 126, welcher die LAN-Firewall 114 mit einem E-Mail-Server 128, der einen E-Mail-Ordner 138 hat, welcher E-Mails enthält, weiterhin mit einem Fileserver 132, der einen Dateiordner 142 hat, welcher Dateien enthält, mit einem Kalenderserver 130, der einen Kalenderordner 140 hat, welcher Kalenderdaten enthält, und mit einem Desktopcomputer 134 verbindet, welcher einen Webbrowser 152 und einen Lesezeichenordner 144, der Lesenzeichen enthält, hat. Man erkennt, daß der E-Mail-Ordner 138, der Dateiordner 142, der Kalenderordner 140 und der Lesezeichenordner 144 oder Teile derselben an unterschiedlichen Stellen, wie z. B. auf dem Desktopcomputer 134, gespeichert sein können. Der E-Mail-Order 132, der Dateiordner 142, der Kalenderordner 140 und der Lesezeichenordner 144 sind lediglich Beispiele, sind entsprechender ähnlicher Information gruppiert und werden hier gemeinsam als „Arbeitsplatzdaten" bzw. „Arbeitsraumdaten" 136 bezeichnet. Fachleute erkennen, daß die Arbeitsplatzdaten 136 andere Datentypen, wie z. B. ein Anwendungsprogramm, wie Microsoft Word 6.0.1 und die Dokumente, die durch dessen Verwendung erzeugt wurden, enthalten kann. Man erkennt weiterhin, daß der E-Mail-Ordner 138, der Dateiordner 142, der Kalenderordner 140 und der Lesezeichenordner 144 jeweils in Arbeitsplatzelemente aufgeteilt werden können, wobei jeder Arbeitsplatzelementordner oder jedes Arbeitsplatzelement individuell durch bestimmte Versionsinformation 255 gekennzeichnet ist (die nachstehend in Bezug auf 2 erläutert wird). Dementsprechend kann jede E-Mail oder jeder E-Mail-Ordner oder jede Datei oder jeder Dateiordner, jeder Kalender oder Kalenderordner, jedes Lesezeichen oder jeder Lesezeichenordner, jedes Dokument oder jeder Dokumentordner, etc. als ein „Arbeitsplatzelement" bezeichnet werden.
  • Jedes Arbeitsplatzelement der Arbeitsplatzdaten 136 in dem LAN 110 wird in einem vorbestimmten Format gehalten, das als Format A bezeichnet wird, welches auf der Dienstleistungsmaschine 245 (2) beruht, welche es erzeugt hat. Beispielsweise kann der Webbrowser 152 auf dem Desktopcomputer 134 der Webbrowser von Netscape NavigatorTM sein und die Lesezeichen in dem Lesezeichenordner 144, die dadurch erzeugt wurden, werden in dem Format A gehalten. Auch wenn das Format A als ein einzelnes Format beschrieben wird, sind sich Fachleute auf dem Gebiet einig, daß das Format A tatsächlich ein Format für jeden Informationstyp aufweist; beispielsweise gibt es ein Format A für Lesezeichen, ein Format A für Dateien, ein Format A für Kalenderdaten, ein Format A für E-Mails, usw.
  • Der entfernte Anschluß bzw. das entfernte Terminal 102 speichert Dienstleistungsmaschinen 154, um Arbeitsplatzdaten 116 zu speichern bzw. zu halten oder zu pflegen, welche möglicherweise Information enthalten, die mit der Information in den Arbeitsplatzdaten 136 zusammenhängt bzw. identisch ist. Die Arbeitsplatzen 116 werden in einem Format gehalten, welches als Format B bezeichnet wird und welches von Format A verschieden sein kann. Das Format B beruht ebenfalls auf den Dienstleistungsmaschinen 154, welche Arbeitsplatzelemente erzeugen. Wenn beispielsweise eine der Dienstleistungsmaschinen 154 der Webbrowser des Internet ExplorerTM (nicht dargestellt) ist, so werden die Lesezeichen (nicht dargestellt), die von diesem erzeugt werden, in dem Format B gehalten. Auch wenn das Format B als ein einzelnes Format beschrieben wird, so wissen Fachleute auf dem Gebiet, daß das Format B eigentlich ein Format für jeden Typ von Information umfaßt. Weiterhin umfassen die Arbeitsplatzdaten 116 auch Versionsinformation 150, die ähnlich der Versionsinformation 255 ist, welche nachstehend unter Bezug auf 2 beschrieben wird.
  • Es versteht sich, daß ein entferntes Terminal 102 ein intelligentes Telefon, ein persönlicher Datenassistent (Personal Data Assistant – PDA), wie z. B. das PalmPilot-System von der US Robotics, Inc., ein Laptopcomputer etc. sein kann. Bei einem intelligenten Telefon können die Arbeitsplatzdaten 116 Telefonnummern und E-Mails enthalten. Bei einem PDA können die Arbeitsplatzda ten 116 Adressen, Kalenderdaten und E-Mails umfassen. Bei einem Laptopcomputer können die Arbeitsplatzdaten 116 dieselben Informationstypen wie die Arbeitsplatzdaten 136 umfassen.
  • Der globale Server 106 wird als Administrator eines Dritten, bzw. einer dritten Partei. Der globale Server 106 speichert unabhängig modifizierbare Kopien ausgewählter Abschnitte der Arbeitsplatzdaten 136 bzw. 116, die hier allgemein als Arbeitsplatzdaten 120 bezeichnet werden. Dementsprechend enthalten die Arbeitsplatzdaten 120 eine unabhängig modifizierbare Kopie jedes Arbeitsplatzelementes in den ausgewählten Abschnitten der Arbeitsplatzdaten 136 und 116 und eine unabhängig modifizierbare Kopie jeder entsprechenden Versionsinformation 255 (2) und 150. Die Versionsinformationskopien werden hier gemeinsam als Versionsinformation 148 bezeichnet und sie werden auch unter Bezug auf 2 beschrieben.
  • Der globale Server 106 hält die Arbeitsplatzdaten 120 in einem Format, das als ein „globales Format" bezeichnet wird, welches so ausgewählt wird, daß es in einfacher Weise durch den globalen Übersetzer 122 zu und von dem Format A und zu und von dem Format B übersetzt werden kann. Auch wenn das globale Format als ein einzelnes Format beschrieben wird, verstehen Fachleute auf dem Gebiet, daß das globale Format eigentlich ein globales Format für jeden Informationstyp umfaßt, d.h. es gibt ein globales Format für Lesezeichen, ein globales Format für Dateien, ein globales Format für Kalenderdaten, ein globales Format für E-Mails etc. Ein beispielhaftes Lesezeichenarbeitsplatzelement in dem globalen Format wird im einzelnen nachstehend unter Bezug auf 6 beschrieben.
  • Das Netzwerk 100 weist weiterhin eine Synchronisierungseinrichtung auf, die ein Basissystem 146 umfaßt, welches in dem LAN 110 und beispielsweise auf dem Desktopcomputer 134 gespeichert ist. Das Netzwerk 100 umfaßt weiterhin einen Synchronisierungsagenten 124, der außerhalb der LAN-Firewall 114 und vorzugsweise auf dem globalen Server 106 gespeichert ist. Das Basissystem 146 und der Synchronisierungsagent 124 arbeiten so zusammen, daß sie ausgewählte Abschnitte der Arbeitsplatzdaten 136 mit ausgewählten Abschnitten der Arbeitsplatzdaten 120 synchronisieren. Die Synchronisationseinrichtungen können die Arbeitsplatzelemente individuell synchronisieren, beispielsweise spezielle Word-Prozessor-Dokumente, oder können Ordner für Arbeitsplatzelemente, beispielsweise einen Lesezeichenordner, synchronisieren. Im allgemeinen verwaltet das Basissystem 146 den ausgewählten Bereich der Arbeitsplatzdaten 136 in dem LAN 110 und der Synchronisierungsagent 124 verwaltet die ausgewählten Bereiche der Arbeitsplatzdaten 120 in dem globalen Server 106. Es versteht sich, daß der globale Übersetzer 122 mit der Synchronisationseinrichtung zusammenarbeitet, um Datenformate zu und von dem globalen Format zu übersetzen. Wie im einzelnen weiter unten unter Bezug auf 4 beschrieben wird, initiiert das Basissystem 190 vorzugsweise die Datensynchronisierung und steuert diese.
  • Die Synchronisierungseinrichtung kann außerdem ein Basissystem 118 umfassen, welches auf dem entfernt gelegenen Terminal 102 gespeichert ist und in einer ähnlichen Weise wie das Basissystem 146 arbeitet. Das Basissystem 118 auf dem entfernt gelegenen Anschluß 102 arbeitet mit dem Synchronisierungsagenten 124 zusammen, um ausgewählte Abschnitte der Arbeitsplatzdaten 116 mit ausgewählten Abschnitten der Arbeitsplatzdaten 120 zu synchronisieren. Wie im einzelnen genauer weiter unten unter Bezug auf 4 beschrieben wird, initiiert das Basissystem 118 auf dem entfernt gelegenen Terminal 102 vorzugsweise auch die Datensynchronisierung mit dem globalen Server 106 und steuert diese. Man beachte auch, daß die Verteilung von Arbeit zwischen dem Basissystem 118 in dem entfernt gelegenen Terminal 102 und dem Synchronisierungsagenten 124 in dem globalen Server 106 variieren kann. Mitunter, hautsächlich wenn das entfernt gelegene Terminal 102 eine Einrichtung mit relativ geringer Rechnerleistung ist (wie z. B. ein intelligentes Telefon oder ein PDA), erfolgt der größte Teil der eigentlich rechnungstechnisch intensiven Arbeit innerhalb des Synchronisierungsagenten 124 in dem globalen Server 106. In anderen Situationen, wenn beispielsweise das entfernt gelegene Terminal ein voll konfigurierter PC ist, erfolgt der größte Teil der rechnungstechnisch intensiven Arbeit lokal auf dem Basissystem 118 in dem entfernt gelegenen Terminal 102. Dementsprechend synchronisiert die Synchronisierungseinrichtung unabhängig die ausgewählten Abschnitte der Arbeitsplatzdaten 116 und 136 mit ausgewählten Abschnitten der Arbeitsplatzdaten 120. Demnach synchronisiert die Synchronisierungseinrichtung indirekt Arbeitsplatzdaten 136 mit Arbeitsplatzdaten 116.
  • 2 ist ein Blockdiagramm, welches Einzelheiten eines Dienstleistungsservers 200 veranschaulicht, wobei der E-Mail-Server 145, der Dateiserver 150, der Kalenderserver 155 und der Desktopcomputer 160 jeweils ein Beispiel dafür sind. Der Dienstleistungsserver 200 enthält eine zentrale Verarbeitungseinheit (CPU) 205, wie z. B. einen Intel Pentium®-Mikroprozessor oder einen Motorola Power PC®-Mikroprozessor. Eine Eingabeeinrichtung 210, wie z. B. eine Tastatur und eine Maus, und eine Ausgangseinrichtung 215, wie z. B. eine Katodenstrahlröhrenanzeige (CRT) sind über einen Signalbus 220 mit der CPU 205 verbunden. Eine Kommunikationsschnittstelle 225 (wie z. B. ein Ethernet-Anschluß), eine Datenspeichereinrichtung 230 (wie z. B. eine Magnetplatte), und ein Speicher mit wahlfreiem Zugriff (RAM) 235 sind über einen Signalbus 220 ebenfalls mit der CPU 205 verbunden.
  • Ein Betriebssystem 240 enthält ein Programm zum Steuern der Verarbeitung durch die CPU 205 und wird typischerweise in der Datenspeichereinrichtung 230 gespeichert und zur Ausführung in den RAM 235 geladen. Eine Dienstleistungsmaschine 245 enthält ein Programm zu Durchführen eines bestimmten Dienstes, wie z. B. des Bereithaltens einer E-Mail-Datenbank, einer Dateidatenbank, einer Kalenderdatenbank oder einer Lesenzeichendatenbank. Die Dienstleistungsmaschine 245 kann ebenfalls in der Datenspeichereinrichtung 230 gespeichert sein und kann zur Ausführung in den RAM 235 geladen werden.
  • Um einen Dienst durchzuführen, erzeugt die Dienstleistungsmaschine 245 Dienstleistungsdaten 250 (beispielsweise eine E-Mail oder einen E-Mail-Ordner 138, der E-Mails enthält, eine Datei oder einen Dateiordner 142, welcher Dateien enthält, Kalenderdaten oder einen Kalenderordner 140, welcher Kalenderdaten enthält, ein Lesezeichen oder einen Lesezeichenordner 144, welcher Lesezeichen enthält, etc.) in dem Format A entsprechend vorbestimmten Protokollen. Die Dienstleistungsmaschine 245 speichert die Daten 250 in der Datenspeichereinrchtung 230. Die Dienstleistungsdaten 250 enthalten Versionsinformation 155, die das Datum und den Zeitpunkt der letzten Modifizierung und den Status, die die letzte Interaktion mit dem globalen Server 106 anzeigt.
  • Wenn beispielsweise die Dienst- bzw. Servicedaten 250 erzeugt werden und so ausgewählt werden, daß sie mit den Arbeitsplatzdaten 120 des globalen Servers verschmelzen, so kann die Versionsinformation 255 für die Servicedaten 250 das Datum der letzten Modifikation und eine Nulleinstellung enthalten, welche den Zustand der letzten Interaktion mit dem globalen Server 106 anzeigt. Aus der Versionsinformation 255 bestimmt das Basissystem 246, daß die Servicedaten 250 in ihrer Gesamtheit nicht in den Arbeitsplatzdaten des globalen Servers aufgegangen bzw. mit diesem verschmolzen sind. Wenn in ähnlicher Weise die Servicedaten 255 Elemente 1, 2 und 3 für die letzte Modifizierung enthalten, so zeigt der vorherige Status der letzten Interaktion an, daß die Servicedaten 255 die Elemente 1, 2 und 3 enthielten. Wenn die Servicedaten 255 aktuell die Elemente 2, 3 und 4 enthalten, so stellt das Basissystem 140 fest, daß seit der letzten Synchronisierung das Element 1 gelöscht wurde und das Element 4 hinzugefügt wurde.
  • Es versteht sich, daß die Versionsinformation 148 auf dem globalen Server 106 Information enthält, die der Versionsinformation 255 ähnlich ist. D.h., die Versionsinformation 148 enthält Information, welche das Datum und den Zeitpunkt enthält, zu welchem die Version zuletzt modifiziert wurde, sowie den Zustand der letzten Interaktion mit jedem Client enthält. Die Servicemaschine 245 arbeitet so, daß sie die Versionsinformation 255 aktualisiert, nachdem Modifikationen vorgenommen wurden und nachdem eine Synchronisation erfolgt.
  • 3 ist ein Blockdiagramm, welches Einzelheiten des Desktopcomputers 160 veranschaulicht, der eine CPU 305, eine Eingabeeinrichtung 310, eine Ausgabeeinrichtung 315, eine Kommunikationsschnittstelle 325, eine Datenspeichereinrichtung 330 und einen RAM 335 enthält, die jeweils mit einem Signalbus 320 verbunden sind.
  • Ein Betriebssystem 340 enthält ein Programm zum Steuern der Verarbeitung durch die CPU und es wird typischerweise eine Datenspeichereinrichtung 330 gespeichert und zur Ausführung in den RAM 335 geladen. Ein Webbrowser 152 (d.h. eine bestimmte Servicemaschine 245, 2) enthält ein Serviceprogramm im Format A zum Verwalten eines Lesezeichenordners 144 (d.h. bestimmte Servicedaten 250, 2), welcher Versionsinformation 350 enthält (d.h. bestimmte Versionsinformation 255, 2). Der Webbrowser 152 kann ebenfalls in der Datenspeichereinrichtung 330 gespeichert sein und zur Ausführung in den RAM 335 geladen werden. Der Lesezeichenordner 144 kann in der Datenspeichereinrichtung 330 gespeichert sein. Wie oben unter Bezug auf 1 erläutert wurde, arbeitet das Basissystem 146 so, daß es die Arbeitsplatzdaten 136 (welche den Lesezeichenordner 144 umfassen) mit den Arbeitsplatzdaten 120 synchronisiert. Das Basissystem 146 kann ebenfalls in der Datenspeichereinrichtung 330 gespeichert sein und zur Ausführung in den RAM 335 geladen werden.
  • 4 ist ein Blockdiagramm, welches Einzelheiten des Basissystems 200 veranschaulicht, welches ein Beispiel für die Basissysteme 146 und 118 darstellt. Das Basissystem 400 weist ein Kommunikationsmodul 405, ein Benutzerschnittstellenmodul 410, Lokalisierungsmodule 415, ein Synchronisierungsstart („synch-start")-Modul 420, ein allgemeines Synchronisierungsmodul 425 und ein auf Inhalt bezogenes Synchronisierungsmodul 430. Der Einfachheit halber ist jedes Modul so dargestellt, daß es mit jedem anderen über einen Signalbus 440 in Kommunikationsverbindung steht.
  • Das Kommunikationsmodul 405 enthält Programme für das Komprimieren von Daten und Programme zum Kommunizieren über die Kommunikationsschnittstelle 325 (3) mit dem Synchronisierungsagenten 124 (1). Das Kommunikationsmodul 405 kann weiterhin Programme für das Anwenden der Technologie der sicheren Stecker- bzw. Sockelebene (Secure Socket Layer – SSL) und Techniken für die Benutzeridentifizierung und Authentisierung (d.h. digitale Zertifikate) enthalten, um einen sicheren Kommunikationskanal durch die globale Firewall 112 hindurch bereitzustellen. Beispiele für Kommunikationsmodule 405 können TCP/IP-Stapel oder das AppleTalk®-Protokoll umfassen.
  • Das Benutzerschnittstellenmodul 410 enthält Programme zum Kommunizieren mit einem Benutzer und kann eine konventionelle graphische Benutzerschnittstelle (GUI) enthalten. Das Benutzerschnittstellenmodul 410 arbeitet mit den anderen Systemkomponenten, die hierin beschrieben wurden, zusammen.
  • Die Lokalisierungsmodule 415 enthalten Programme für das Identifizieren der Speicherstellen der Arbeitsplatzelemente in den Arbeitsplatzdaten 136 oder 116 und in den Arbeitsplatzdaten 120. Die Identifizierung der Speicherstelle für das Workspace-Element kann unter Verwendung intelligenter Software implementiert werden, d.h., vor Einstellen von Speicheradressen oder des Registers des Systems oder Verwendung von Dialogboxen, um einen Benutzer zu befragen. Genauer gesagt legen die Lokalisierungsmodule 415 in dem Basissystem 146 die Speicheradressen des E-Mail-Ordners 138, des Dateiordners 142, des Kalenderordners 140 und des Lesezeichenordners 144 sowie die Speicheradressen der Arbeitsraumelemente darin fest. Die Lokalisierungsmodule 415 legen auch die entsprechenden Speicheradressen der entsprechenden Ordner in den Arbeitsplatzdaten 120 und der entsprechenden Arbeitsplatzelemente darin fest. In ähnlicher Weise legen die Lokalisierungsmodule 415 in dem Basissystem 118 die Speicherstellen der Arbeitsplatzelemente der Arbeitsplatzdaten 116 und die Speicherstellen der entsprechenden Arbeitsplatzelemente in dem Arbeitsraum 120 fest.
  • Es versteht sich, daß die Lokalisierungsmodule 415 solche Lokalisierungsmodule 415 enthalten können, die jedem Ordner oder Arbeitsplatzdatentyp speziell zugeordnet werden können. D.h., die Lokalisierungsmodule 415 können ein Lokalisierungsmodul 415 umfassen, welches der Lokalisierung von Lesezeichen gewidmet ist, ein Lokalisierungsmodul 415, welches der Lokalisierung von E-Mails gewidmet ist, ein Lokalisierungsmodul 415, welches der Lokalisierung von Dateien zugeordnet ist, ein Lokalisierungsmodul 415, welches der Lokalisierung von Kalenderhinweisen gewidmet ist, etc. Man erkennt weiterhin, daß die Lokalisierungsmodule 415 beim Herauffahren des Systems oder nach jeder Kommunikation mit dem globalen Server 120 eine Identifizierung der Speicherlokalisierung eines Arbeitsplatzelementes ausführen können, um aktualisierte Speicheradressen von Arbeitsplatzelementen aufrecht zu erhalten.
  • Das Synchronisierungs-Startmodul 420 enthält Programme bzw. Abläufe um zu bestimmen, wann die Synchronisierung von Arbeitsplatzdaten 136 oder 116 mit Arbeitsplatzdaten 120 auszulö sen ist. Beispielsweise kann das Synchronisierungs-Daten-Modul 420 eine Datensynchronisierung auf Anforderung eines Benutzers, zu einer bestimmten Tageszeit, nach Ablauf einer bestimmten Zeitdauer, nach einer vorbestimmten Anzahl von Änderungen, nach einer Benutzungsaktion, wie z. B. des Abmeldens eines Benutzers oder aufgrund ähnlicher Kriterien ausgelöst werden. Das Synchronisierungs-Start-Modul 420 löst eine Datensynchronisierung aus, indem es das allgemeine Synchronisierungsmodul 425 (welches unten weiter beschrieben wird) anweist, mit der Ausführung seiner Programme zu beginnen. Es versteht sich, daß die Kommunikation mit dem Synchronisierungsagenten 124 vorzugsweise aus dem LAN 110 heraus ausgelöst wird, da typischerweise eine Firewall 114 eingehende Kommunikationen verhindert, jedoch ausgehende Kommunikationen erlaubt.
  • Das allgemeine Synchronisierungsmodul 425 enthält Routinen bzw. Unterprogramme, um eine Versionsinformation 148 für modifizierte Versionen von dem Synchronisierungsagenten 124 (1) zu empfangen, sowie Unterprogramme (Routinen), um die Versionsinformation 255 oder 150 im Vergleich zu einer letzten Synchronisierungssignatur 435 zu untersuchen (wie z. B. gegenüber dem letzten Synchronisierungsdatum und der -zeit), um festzustellen, welche Versionen modifiziert worden sind. Das allgemeine Synchronisierungsmodul 425 enthält weiterhin Routinen bzw. Programme, um die Versionsinformation 148 und die Versionsinformation 255 oder 150 zu untersuchen, um festzustellen, ob eine oder beide Versionen eines bestimmten Arbeitsplatzelementes oder Arbeitsplatzelementordners modifiziert worden sind. Weiterhin enthält das allgemeine Synchronisierungsmodul 425 Routinen zum Ausführen einer angemessenen Antwortaktion auf die Synchronisierung. Angemessene Antwortaktionen auf die Synchronisierung können umfassen, daß, wenn nur eine Version eines Arbeitsplatzelementes in den Arbeitsplatzdaten 136 oder 116 modifiziert worden ist, die modifizierte Version (als die bevorzugte Version) an den (die) anderen Speicher weitergeleitet wird, oder daß nur die Veränderungen festgestellt und weitergeleitet werden. Das Berechnen von Veränderungen, die vorgenommen wurden, kann durchgeführt werden, indem der aktuelle Status im Vergleich zu dem vorherigen Status bei der letzten Synchronisierung untersucht wird oder indem die beiden Versionen verglichen werden. Es versteht sich, daß keine Überprüfung der Änderung auf der Basis des Inhaltes erforderlich ist. Es versteht sich, daß ein Speicher vorzugsweise nur die Änderungen an den anderen Speicher weiterleitet, um den Gebrauch von Prozessorleistung zu optimieren und um die Datenkommunikation über den Kommunikationskanal 108 oder 104 minimal zu machen.
  • Andere geeignete Reaktionen auf Synchronisierung können umfassen, daß, wenn zwei Versionen eines Arbeitsplatzelementes unabhängig voneinander modifiziert worden sind, das auf Inhalt beruhende Synchronisierungsmodul 430 (welches unten weiter beschrieben wird) angewiesen wird, seine Routinen bzw. Programme auszuführen. D.h., daß dann, wenn zwei Versionen desselben Arbeitsplatzelementes unabhängig modifiziert worden sind, eine Durchsicht bzw. Kontrolle der Veränderungen auf Basis des Inhaltes bevorzugt ist. Nach Abschluß der Datensynchronisierung aktualisiert das allgemeine Synchronisierungsmodul 425 die letzte Synchronisierungssignatur 435.
  • Das auf Inhalt beruhende Synchronisierungsmodul 430 enthält Programme für das Abgleichen von zwei oder mehr modifizierten Versionen eines Arbeitsplatzelementes. Wenn beispielswei se ein Benutzer das Original und die Kopie eines Arbeitsplatzelementes seit der letzten Synchronisierung unabhängig modifiziert hat, so stellt das auf Inhalt beruhende Synchronisierungsmodul 430 eine angemessene Antwortaktion fest. Das auf Inhalt beruhende Synchronisierungsmodul 430 kann den Benutzer auffordern, eine bevorzugte der modifizierten Versionen auszuwählen oder kann auf der Basis von vorher eingestellten Präferenzen reagieren, d.h. indem beide Versionen in beiden Speichern gespeichert werden, oder vorzugsweise durch Integrieren der modifizierten Versionen in eine einzelne bevorzugte Version, die jede der modifizierten Versionen in beiden Speichern ersetzt.
  • Das auf Inhalt beruhende Synchronisierungsmodul 430 untersucht die an jeder Version vorgenommenen Änderungen und stellt fest, ob Konflikte vorliegen. Wenn eine Integration von Versionen implementiert ist, kann ein Konflikt auftreten, wenn inkonsistente Modifikationen, wie z. B das Löschen eines Absatzes in einer Version und das Verändern bzw. Modifizieren desselben Absatzes in der anderen Version vorgenommen wurden. Wenn ein Konflikt vorliegt, so versucht das auf Inhalt beruhende Synchronisierungsmodul 430 den Konflikt aufzulösen beispielsweise durch Anfordern einer Benutzerauswahl oder durch Speichern beider Versionen in beiden Speichern. Wenn anderenfalls kein Konflikt vorliegt, so integriert das auf Inhalt beruhende Synchronisierungsmodul 430 die mit jeder der Versionen vorgenommenen Änderungen und aktualisiert die Versionsinformation 148, 150 oder 255 entsprechend.
  • 5 ist ein Blockdiagramm, welches Einzelheiten des Synchronisierungsagenten 124 veranschaulicht, welcher ein Kommunikationsmodul 505 (ähnlich dem oben unter Bezug auf 4 beschriebenen Kommunikationsmodul 405) sowie ein allgemeines Synchronisierungsmodul 515 (ähnlich dem allgemeinen Synchronisierungsmodul 425, welches oben ebenfalls unter Bezug auf 4 beschrieben wurde) enthält.
  • Das Kommunikationsmodul 505 enthält Routinen zum Komprimieren von Daten und Routinen, um über den Kommunikationskanal 108 mit dem Basissystem 146 oder über den Kommunikationskanal 104 mit dem Basissystem 118 zu kommunizieren. Das Kommunikationsmodul 505 kann weiterhin Routinen enthalten, um einen sicheren Kommunikationskanal durch die globale Firewall 112 durch die LAN-Firewall 114 mit dem Kommunikationsmodul 405 bereitzustellen.
  • Ähnlich dem allgemeinen Synchronisierungsmodul 425 enthält das allgemeine Synchronisierungsmodul 515 Routinen, um die Versionsinformation 148 und die letzte Synchronisierungssignatur 435 (4) zu untersuchen, um festzustellen, welche Versionen verändert worden sind und um die vorgenommenen Änderungen zu bestimmen. Es versteht sich, daß das allgemeine Synchronisierungsmodul 515 seine eigene Kopie der letzten Synchronisierungssignatur (nicht dargestellt) behalten kann oder die letzte Synchronisierungssignatur 435 von dem Basissystem 146 oder 118 anfordern kann. Das allgemeine Synchronisierungsmodul 515 umfaßt weiterhin Routinen, um Arbeitsplatzdaten 120, die modifiziert werden sollen, an das allgemeine Synchronisierungsmodul 425 weiterzuleiten, und Programme bzw. Routinen, um bevorzugte Versionen von Arbeitsplatzelementen von Arbeitsplatzdaten 136 oder 116 oder einfach die Änderungen von dem allgemeinen Synchronisierungsmodul 425 zu empfangen.
  • 6 veranschaulicht ein beispielhaftes Lesezeichen-Arbeitsplatzelement in dem globalen Format. Der globale Übersetzer 122 beinhaltet sämtliche Informationen, die von beiden Formaten (Format A und Format B) benötigt wird, um das globale Format zu erzeugen. Wenn beispielsweise ein Lesezeichen im Format A Elemente X, Y und Z benötigt und ein Lesezeichen im Format B Elemente W, X und Y benötigt, so baut der allgemeine Übersetzer 122 die Elemente W, X, Y und Z ein, um ein Lesezeichen in dem globalen Format zu erzeugen. Weiterhin übernimmt der globale Übersetzer 122 die Information, die von der Synchronisierungseinrichtung benötigt wird, wie z. B. das zuletzt modifizierte Datum. Dementsprechend enthält ein Lesezeichen in dem globalen Format eine Benutzeridentifizierung (ID) 605, eine Eintrags-ID 610, eine Vorgänger-ID 615, ein Ordner-ID-Flag 620, einen Namen 625, eine Beschreibung 630, den Uniform-Resource-Locator (URL) 635, die Position 640, ein gelöschtes ID-Flag 645, ein Datum 650 der letzten Modifizierung, ein erzeugtes Datum 655 und ein Trennungs-ID-Flag 660.
  • 7 ist ein Flußdiagramm, welches ein Verfahren 700 zur Verwendung eines globalen Übersetzers 122 veranschaulicht, um mehrere Kopien eines Arbeitsplatzelementes in einem sicheren Netzwerk 100 zu synchronisieren. Das Verfahren 700 beginnt damit, daß das Benutzerschnittstellenmodul 410 in Schritt 705 einen Benutzer in die Lage versetzt, Arbeitsplatzelemente von Arbeitsplatzdaten 136 und 118 für die Synchronisierungseinrichtung zum Synchronisieren auszuwählen. Die Lokalisierungsmodule 415 in Schritt 710 identifizieren die Speicherstellen der Arbeitsplatzelemente in den Arbeitsplatzdaten 136 und 116 und die entsprechenden Speicherstellen in den Arbeitsplatzdaten 120. Wenn ein ausgewähltes Arbeitsplatzelement keine entsprechende Speicherstelle hat, wie z. B. im Falle der Hinzufügung eines neuen Arbeitsplatzelementes zu dem globalen Server 106, so wird eine ausgewählt. Die ausgewählte Speicherstelle kann ein zuvor schon existierendes Arbeitsplatzelement oder ein neues Arbeitsplatzelement sein bzw. enthalten. Wie oben festgestellt, kann eine Identifizierung der Speicherstelle eines Arbeitsplatzelementes unter Verwendung intelligenter Software oder von Dialogboxen implementiert sein. Das allgemeine Synchronisierungsmodul 425 und das allgemeine Synchronisierungsmodul 515 setzen den vorherigen Status der Arbeitsplatzelemente auf den Nullsatz. Das Setzen des vorherigen Status auf den Nullsatz zeigt an, daß sämtliche Informationen des Arbeitsplatzelementes hinzugefügt worden sind.
  • Das Synchronisierungsstartmodul 420 in Schritt 720 stellt fest, ob vorbestimmte Kriterien erfüllt worden sind, welche anzeigen, daß die Synchronisierung der Arbeitsplatzelemente, die in Schritt 705 ausgewählt wurden, beginnen sollte. Falls nicht, so wartet das Synchronisierungs-Start-Modul 420 in Schritt 725 und geht in einer Schleife zurück zu Schritt 720. Ansonsten stellen das Kommunikationsmodul 405 und das Kommunikationsmodul 505 in Schritt 730 einen sicheren Kommunikationskanal dazwischen bereit.
  • Das allgemeine Synchronisierungsmodul 425 und das allgemeine Synchronisierungsmodul 515 stellen in Schritt 735 fest, ob irgendein Arbeitsplatzelement modifiziert worden ist. D.h., das allgemeine Synchronisierungsmodul 425 untersucht in Schritt 740 die Versionsinformation 255 oder 150 jedes ausgewählten Arbeitsplatzelementes in den Arbeitsplatzdaten 136 oder 116 im Vergleich zu der letzten Synchronisierungssignatur 435, um modifizierte Arbeitsplatzelemente zu lokalisieren. Dieser Vergleich kann das Vergleichen des Datums der letzten Modifizierung mit dem Datum der letzten Synchronisierung umfassen oder kann einen Vergleich zwischen dem aktuellen Status oder dem vorherigen Status bei der letzten Interaktion umfassen. In ähnlicher Weise untersucht das allgemeine Synchronisierungsmodul 515 die Versionsinformation 148 jedes entsprechenden Arbeitsplatzelementes in den Arbeitsplatzdaten 120 und die letzte Synchronisierungssignatur 435, um modifizierte Arbeitsplatzelemente zu lokalisieren.
  • Wenn in Schritt 735 keine modifizierten Arbeitsplatzelemente oder -ordner lokalisiert werden, so aktualisieren die allgemeinen Synchronisierungsmodule 425 und 515 in Schritt 716 die letzte Synchronisierungssignatur 435 und die Methode 700 wird beendet. Ansonsten stellt in Schritt 740 das allgemeine Synchronisierungsmodul 425 fest, ob mehr als eine Version eines Arbeitsplatzelementes seit der letzten Synchronisierung modifiziert worden ist.
  • Wenn nur eine Version modifiziert worden ist, so stellt das entsprechende allgemeine Synchronisierungsmodul 425 oder 515 in Schritt 745 die vorgenommenen Änderungen fest. Wie oben erwähnt, kann das Feststellen der vorgenommenen Änderungen implementiert werden durch Vergleichen des aktuellen Zustandes bzw. Status des Arbeitsplatzelementes im Vergleich zu einem vorherigen Zustand des Arbeitsplatzelementes bei der letzten Interaktion mit diesem. Wenn die Änderungen nur an der Version der Arbeitsplatzdaten 120 vorgenommen wurden, so übersetzt der globale Übersetzer 122 in Schritt 750 die Veränderungen in das durch den anderen Speicher verwendete Format und das allgemeine Synchronisierungsmodul 515 leitet in Schritt 755 die übersetzten Änderungen an das allgemeine Synchronisierungsmodul 425 weiter, um das abgelaufene Arbeitselement in den Arbeitsplatzdaten 136 oder 116 zu aktualisieren. Wenn die aktualisierte Version ein Arbeitsplatzelement in den Arbeitsplatzdaten 136 oder 116 ist, so sendet das allgemeine Synchronisierungsmodul 425 die Veränderungen der aktualisierten Version an den globalen Übersetzer 122 für eine Übersetzung und dann an das allgemeine Synchronisierungsmodul 515, um das abgelaufene bzw. veraltete Arbeitsplatzelement in den Arbeitsplatzdaten 120 zu aktualisieren. Das allgemeine Synchronisierungsmodul 425 und das allgemeine Synchronisierungsmodul 515 aktualisieren in Schritt 757 den vorherigen Zustand, um den aktuellen Zustand dieser Interaktion wiederzugeben. Die Methode 700 geht dann zurück zu Schritt 735.
  • Wenn das allgemeine Synchronisierungsmodul 425 in Schritt 740 feststellt, daß mehrere Versionen modifiziert worden sind, so berechnet das allgemeine Synchronisierungsmodul 425 in Schritt 765 die an jeder Version vorgenommenen Änderungen und weist in Schritt 770 das auf Inhalt beruhende Synchronisierungsmodul 430 an, den Inhalt zu untersuchen, um festzustellen, ob irgendein Konflikt vorliegt. Beispielsweise kann das auf Inhalt beruhende Synchronisierungsmodul 430 feststellen, daß ein Konflikt vorliegt, wenn ein Benutzer in einer Version einen Absatz löscht und denselben Absatz in einer anderen Version modifiziert. Das auf Inhalt beruhende Synchronisierungsmodul 430 kann feststellen, daß ein Konflikt nicht vorliegt, wenn ein Benutzer in jeder Version unterschiedliche Absätze löscht. Wenn kein Konflikt festgestellt wird, so springt das Verfahren 700 zu Schritt 750, um die Veränderungen jeder Version zu übersetzen und an den anderen Speicher weiterzuleiten. Wenn jedoch ein Konflikt festgestellt wird, so gleicht das auf Inhalt beruhende Syn chronisierungsmodul 430 die modifizierten Versionen in Schritt 775 miteinander ab. Wie oben erläutert, kann die Korrektur bzw. das Abgleichen das Anfordern von Anweisungen von dem Benutzer umfassen oder kann auf voreingestellten Präferenzen beruhen, indem Reaktionen ausgeführt werden, wie z. B. das Speichern beider Versionen in beiden Speichern. Das Verfahren 700 geht dann weiter zu Schritt 750.
  • Man erkennt, daß in Schritt 710 neue Arbeitsplatzelemente und vorher existierende Arbeitsplatzelemente, mit welchen neue Arbeitsplatzelemente verschmelzen, auf „modifiziert" gesetzt werden, und daß der vorherige Status auf den Nullsatz gesetzt wird. Demnach stellt das allgemeine Synchronisierungsmodul in Schritt 740 fest, daß mehr als eine Version modifiziert worden ist und das auf Inhalt beruhende Synchronisierungsmodul 430 stellt in Schritt 770 fest, daß kein Konflikt vorliegt. Die jeweils vorgenommenen Veränderungen werden übersetzt und an den anderen Speicher weitergeleitet. Dementsprechend werden die beiden Versionen effektiv miteinander verschmolzen und in jedem Speicher gespeichert.
  • Wenn beispielsweise ein erster Lesezeichenordner durch den Webbrowser 152 auf dem Desktop-Computer 134 erzeugt wurde, ein zweiter Ordner durch einen Webbrowser (nicht dargestellt) an dem entfernt gelegenen Terminal 102 erzeugt wurde, kein Ordner zuvor auf dem globalen Server 106 existierte und der Benutzer jeden der Ordner für die Synchronisation ausgewählt hat, so verschmilzt die Synchronisierungseinrichtung effektiv die ersten und zweiten Ordner. D.h., daß allgemeine Synchronisierungsmodul 425 auf dem Desktop-Computer 134 stellt fest, daß der erste Ordner modifiziert worden ist und daß der vorherige Status gleich dem Nullsatz ist. Das allgemeine Synchronisierungsmodul 425 stellt die Änderungen fest und sendet sie, d.h. sämtliche Arbeitsplatzelemente in dem ersten Ordner, an einen neuen globalen Ordner auf dem globalen Server 106. In ähnlicher Weise stellt das allgemeine Synchronisierungsmodul 425 auf dem entfernt gelegenen Terminal 102 fest, daß bei seiner letzten Interaktion der vorherige Status jedes der zweiten und globalen Ordner der Nullsatz ist. Das allgemeine Synchronisierungsmodul 425 weist das auf Inhalt beruhende Synchronisierungsmodul 430 an, die an jedem Ordner vorgenommenen Änderungen zu untersuchen, um festzustellen, ob ein Konflikt vorliegt. Da keine Konflikte vorliegen, leitet das allgemeine Synchronisierungsmodul 425 die Veränderungen an den globalen Ordner weiter und das allgemeine Synchronisierungsmodul 515 leitet seine Änderungen an den zweiten Speicher weiter und verschmilzt dadurch die Arbeitsplatzelemente der ersten und zweiten Ordner in den globalen und zweiten Ordnern. Das allgemeine Synchronisierungsmodul 515 informiert das allgemeine Synchronisierungsmodul 425, daß der globale Ordner im Vergleich zu der letzten Interaktion modifiziert worden ist und leitet neue Veränderungen an den ersten Ordner weiter. Demnach werden die ersten und zweiten Ordner miteinander verschmolzen und in jedem Speicher gespeichert.
  • Für ein zweites Beispiel kann der Benutzer ein beispielhaftes Dokument in dem zu synchronisierenden LAN 110 auswählen. Das allgemeine Synchronisierungsmodul 425 leitet das Dokument an den globalen Server 106 weiter. In ähnlicher Weise kann der Benutzer dasselbe Dokument für die Synchronisation auf dem entfernt gelegenen Terminal 102 auswählen. Das allgemeine Synchronisierungsmodul 515 leitet das Dokument an das entfernte Terminal 102 weiter. Wenn an den Do kumenten unabhängig Änderungen vorgenommen wurden, so untersucht das auf Inhalt beruhende Synchronisierungsmodul 430 den Inhalt der Dokumente, um festzustellen, ob ein Konflikt vorliegt. Falls kein Konflikt vorliegt, so verschmelzen die allgemeinen Synchronisierungsmodule 435 und 415 die Dokumente, wie oben beschrieben wurde. Ansonsten gleicht das auf Inhalt beruhende Synchronisierungsmodul 430 die Änderungen ab, wenn ein Konflikt vorliegt, und dann leiten die allgemeinen Synchronisierungsmodule 425 und 515 die korrigierten Änderungen wechselseitig einander zu. 8 ist ein Blockdiagramm, welches ein Computernetzwerk 800 veranschaulicht, das ein Local Area Network (LAN) 810 aufweist, welches über einen Kommunikationskanal 815 mit einem Computernetzwerk 820, wie z. B. dem Internet, verbunden ist. Das Computernetzwerk 820 ist seinerseits über einen Kommunikationskanal 825 mit einem globalen Server 830 verbunden, und zwar über einen Kommunikationskanal 835 und mit einem entfernt gelegenen Terminal 805 sowie über einen Kommunikationskanal 893 mit Mailserver 894 eines Internetserviceproviders (ISP). Der ISP-Mailserver 894 ist seinerseits mit einem weiteren Client 897 verbunden. Der globale Server 830 wird durch eine globale Firewall 880 geschützt und das LAN 810 wird durch eine LAN-Firewall 870 geschützt.
  • Das LAN 810 enthält einen Netzwerkserver 845, der die LAN-Firewall 870 über einen Systembus 855 mit einem Client und einem Mailserver 850 verbindet. Der Mailserver 850 empfängt in einer oder mehreren Ordnerstrukturen elektronische Mail 875 des Clients (E-Mails) von dem Computernetzwerk 820, welche an den Client 840 adressiert sind und speichert sie. Der Client 840 enthält ein E-Mail-Synchronisierungssystem 860, um Client-E-Mails 875 von dem Mailserver 815 herunterzuladen und sie lokal in einer oder mehreren Ordnerstrukturen als „downloaded E-Mails 865" lokal zu speichern. Um miteinander in Kommunikation zu treten, müssen der Mailserver 850 und die E-Mail-Maschine 965 sowohl dasselbe Übertragungsprotokoll, wie z. B. die dritte Version von Post Office Protocol (POP 3), das Vendor Independent Messaging (VIM)-Protokoll, welches von der Lotus Development Corporation entwickelt wurde, oder das Messaging Application Program Interface (MAPI)-Protokoll verwenden, wie es durch die Microsoft Corporation entwickelt wurde. Jede E-Mail in dem LAN 810 wird in einem vorbestimmten Format, welches als Format A bezeichnet wird, gespeichert, das durch die E-Mail-Maschine 965 (9) auf dem LAN 810 bzw. 405 beruht, das sie heruntergeladen hat.
  • Es versteht sich, daß die Client-E-Mails 875, welche den heruntergeladenen E-Mails 865 entsprechen, aus dem E-Mail-Server 850 gelöscht werden können, nachdem sie heruntergeladen wurden. Das E-Mail-Synchronisierungssystem 860 synchronisiert weiterhin die heruntergeladenen E-Mails 865, die Client-E-Mails 875 oder möglicherweise nur die E-Mails einer bestimmten Ordnerstruktur (z. B. des Ordners des Benutzers für nicht beantwortete Post oder eines Ordners mit Witzen), mit dem globalen Server 835. Das E-Mail-Synchronisierungssystem 860 wird nachstehend unter Bezug auf 9 noch genauer beschrieben.
  • Der ISP-Mailserver 894 und der Client 897 arbeiten in ähnlicher Weise wie der Mailserver 850 und der Client 840. Generell empfängt der ISP-Mailserver 894 E-Mails von dem Computernetzwerk 820, die an den Client 897 adressiert sind, und speichert sie lokal in einer oder mehreren Ordnerstrukturen als „Client-E-Mails 896". Das E-Mail-Synchronisierungssystem 898 des Client 897 verwendet eine E-Mail-Maschine 965 (9), um Client-E-Mails 896 herunterzuladen und sie lokal in einer oder mehreren Ordnerstrukturen als „heruntergeladene E-Mails 899" zu speichern. Die E-Mail-Maschine 965 eines Client 897 speichert die E-Mails im Format B, welches gegenüber dem Format A unterschiedlich sein kann. Das E-Mail-Synchronisierungssystem 898 synchronisiert dann die Client-E-Mails 896, die heruntergeladenen E-Mails 899 oder möglicherweise die E-Mails spezieller Ordnerstrukturen mit dem globalen Server 835.
  • Jede E-Mail, sei sie nun auf dem Mailserver 850, auf dem Client 840, auf dem Mailserver 894 (der unten beschrieben wird) oder auf dem Client 897 (der unten beschrieben wird) gespeichert, kann eine Sourcekennung (z. B. eine Herkunftsadresse), ein Erzeugungsdatum, ein Empfangsdatum des Mailservers 850 oder 894 und ein Datum des Herunterladens zu dem Client 849 oder 897 enthalten. Das Datum des Herunterladens auf den Client 840 oder 897 kann dasjenige Datum sein, zu welchem das E-Mail-Synchronisierungssystem 860 oder 898 die Client-E-Mails 875 oder 896 für die Synchronisierung mit dem globalen Server 835 herunterlädt.
  • Der globale Server 835 enthält einen Synchronisierungsagenten 885 für das Zusammenarbeiten mit dem E-Mail-Synchronisierungssystem 860 oder dem E-Mail-Synchronisierungssystem 898, um elektronische Mail dazwischen zu synchronisieren. Auf der Basis seiner Konfigurierung übersetzt das E-Mail-Synchronisierungssystem 860 oder 898 jeweils eine Kopie oder das Original und sendet sie an den Synchronisierungsagenten 835 (d.h. behält keine Kopie) einer heruntergeladenen E-Mail 865 oder 899 oder eine Client-E-Mail 875 oder 896. Der globale Server 835 speichert die Kopien oder Originale der heruntergeladenen E-Mails 865 oder 899 in einer oder mehreren Ordnerstrukturen als „heruntergeladene E-Mails 832", und speichert die Client-E-Mails 875 oder 896 in einer oder mehreren Ordnerstrukturen als „Client-E-Mails 895". Der globale Server 835 speichert die E-Mails in einem globalen Format, welches dasselbe sein kann, wie das Format A oder B, oder kann die kombinierten Elemente beider Formate enthalten. Es versteht sich, daß das E-Mail-Synchronisierungssystem 860 oder 898 die Client-E-Mails 875 oder 896 und die heruntergeladenen E-Mails 865 oder 897 gemeinsam ohne Unterscheidung senden und der globale Server 835 diese speichern kann. Weiterhin kann er die Client-E-Mails 875 oder 896 und die heruntergeladenen E-Mails 865 entsprechender spezifischen Ordnern gemeinsam ohne Unterscheidung senden und speichern. Darüber hinaus kann der globale Server 835 so konfiguriert sein, daß er die E-Mails des Client 840 und des Client 897 gemeinsam ohne Unterscheidung speichert. Der globale Server 835 enthält weiterhin eine Webmaschinenschnittstelle 890, welche einen Webmaschinenzugriff auf HTTP-Basis auf die darin enthaltenen Inhalte gewährt einschließlich des Zugriffs auf die Client-E-Mails 895, die heruntergeladenen E-Mails 832 und die Ordnerstrukturen, in welchen sie gespeichert sind. Wie oben unter Bezug auf 4 genauer beschrieben wurde und unten unter Bezug auf 10 beschrieben wird, löst das E-Mail-Synchronisierungssystem 860 vorzugsweise eine Datensynchronisierung aus und steuert sie. Andere Komponenten und Funktionen des globalen Servers 835 werden hier ebenfalls beschrieben.
  • Das entfernte Terminal 1505 enthält eine Webmaschine 833, um Internetdateien einschließlich E-Mails zu lesen. Das entfernte Terminal 102 kann ein intelligentes Telefon, einen persönlichen Datenassistenten (PDA), wie z. B. das PalmPilot-System von U.S. Robotics, Inc. einen Laptop-Computer, etc. umfassen. Demnach kann der Benutzer des entfernten Terminals 1505, soweit er identifiziert werden und auf den globalen Server 835 zugreifen kann, auf die E-Mails 895 und 897 zugreifen. Weiterhin kann der Benutzer, solange die Client-E-Mails 895 und 832 mit den E-Mails 865, 875, 896 und 899 synchronisiert sind, auf alle E-Mails zugreifen, die an den Client 840 und den Client 897 adressiert sind.
  • 9 ist ein Blockdiagramm, welches Einzelheiten eines Client 900 veranschaulicht, welcher ein Beispiel für den Client 840 oder den Client 897 darstellt. Der Client 900 enthält eine zentrale Prozessoreinheit (CPU) 905, wie z. B. einen Intel Pentium®-Mikroprozessor oder einen Motorola Power PC®-Mikroprozessor. Eine Eingabeeinrichtung 910, wie z. B. eine Tastatur und eine Maus und eine Ausgangseinrichtung 915 (wie z. B. eine Anzeige einer Katodenstrahlröhre (CRT)), sind über einen Signalbus 920 an die CPU 905 angeschlossen. Eine Kommunikationsschnittstelle 925 (wie z. B. ein Internetanschluß), eine Datenspeichereinrichtung 930 (wie z. B. eine Magnetplatte) und ein Speicher mit wahlfreiem Zugriff (RAM) 935 sind weiterhin über den Signalbus 920 mit der CPU 905 verbunden. Die Kommunikationsschnittstelle 925 ist mit dem Signalbus 855 verbunden (8).
  • Ein Betriebssystem 950 enthält ein Programm zur Steuerung der Verarbeitung durch die CPU 905 und ist typischerweise in der Datenspeichereinrichtung 930 gespeichert und wird für die Ausführung in dem RAM 935 (wie dargestellt) gespeichert. Der RAM 935 speichert ein E-Mail-Synchronisierungssystem 953 (welches ein Beispiel des E-Mail-Synchronisierungssystems 860 oder des E-Mail-Synchronisierungssystems 898 darstellt), welches Einrichtungen zum Herunterladen von Client-E-Mails 875 oder 896, Einrichtungen zum Lesen heruntergeladener E-Mails 943 (was ein Beispiel für heruntergeladene E-Mails 865 oder 899 darstellt), Einrichtungen zum Synchronisieren von E-Mails 865, 875, 896 oder 899 (welche heruntergeladen wurden) mit dem globalen Server 835 und Einrichtungen zum Synchronisieren der E-Mails spezieller Ordnerstrukturen aufweisen. Beispielsweise enthält das E-Mail-Synchronisierungssystem 953 eine Web-Maschine 955 zum Kommunizieren mit Webservern. Die Web-Maschine 955 enthält ein E-Mail-Modul 960, um elektronische Mail zu lesen und zu schreiben. Das E-Mail-Synchronisierungssystem 953 enthält weiterhin eine E-Mail-Maschine 965, um mit dem Mailserver 850 oder 894 zu kommunizieren, um E-Mails herunterzuladen, zu lesen und zu schreiben. Die E-Mail-Maschine 965 kommuniziert unter Verwendung eines konventionellen Protokolls, wie z. B. POP 3, VIM oder MAPI. Heruntergeladene E-Mails 943 werden in der Datenspeichereinrichtung 930 (9) gespeichert. Die E-Mail-Maschine 965 stellt auch einen Zugriff auf ein Adreßbuch 945 bereit, welches E-Mail-Adreßeinträge enthält und welches ebenfalls in der Datenspeichereinrichtung 930 gespeichert ist.
  • Das E-Mail-Synchronisierungssystem 953 enthält weiterhin ein Basissystem 970 zum Übersetzen von E-Mails aus einem Format A oder Format B in das globale Format und für das Initiieren und Steuern von E-Mail-Synchronisierung mit dem globalen Server 835. Die Übersetzung kann für den Mailserver formatierte E-Mail in HTTP-Paketen enthalten. Das Basissystem 970 wird nachstehend unter Bezug auf 10 und in der in Bezug genommenen Patentanmeldung beschrieben.
  • Es versteht sich, daß Einrichtungen zum Holen von E-Mails so verstanden werden können, daß sie entweder das Betriebssystem 950 enthalten bzw. umfassen, wenn sie heruntergeladene E-Mails 865 oder 899 holen, als die E-Mail-Maschine 965, wenn sie Client-E-Mails 875 oder 896 holt, als das E-Mail-Modul 960 der Web-Maschine 955, wenn E-Mails von einer Seite in dem Computernetzwerk 820 geholt wird, oder Kombinationen hieraus, umfassen.
  • 10 ist ein Blockdiagramm, welches Einzelheiten des Basissystems 970 veranschaulicht, das Basissystem 970 umfaßt ein Kommunikationsmodul 1005, ein Benutzerschnittstellenmodul 1010, Lokalisierungsmodule 1015, ein Synchronisierungs-Start („Sync-Start")-Modul 1020 und ein E-Mail-Synchronisierungsmodul 1030. Der Einfachheit halber ist jedes Modul so dargestellt, daß sie alle miteinander über einen Signalbus 1030 kommunizieren.
  • Das Kommunikationsmodul 1005 enthält Routinen bzw. Unterprogramme zum Komprimieren von Daten und Routinen zum Bereitstellen einer Kommunikationsverbindung über die Kommunikationsschnittstelle 925 (9) mit dem Synchronisierungsagenten 885 (8). Das Kommunikationsmodul 1005 kann weiterhin Routinen bzw. Unterprogramme zum Anwenden der Technik der Secure Socket Layer (SSL) und von Benutzeridentifizierungs- und Authentisierungstechniken (z. B. digitale Zertifikate) umfassen, um durch die globale Firewall 880 einen sicheren Kommunikationskanal bereitzustellen. Da die Synchronisation auf der Innenseite der Firewall ausgelöst wird und allgemein freigegebene Protokolle wie z. B. das Hypertext Transfer Protocol (HTTP) verwendet, wirkt die typische Firewall, die allgemein eingehende Kommunikationen sowie einig ausgehende Protokolle verhindert, nicht als ein Hindernis für die E-Mail-Synchronisierung. Beispiele von Kommunikationsmodulen 1005 können TCP/IP-Stapel (Stacks) oder das AppleTalk®-Protokoll umfassen.
  • Das Benutzerschnittstellenmodul 1010 umfaßt Routinen bzw. Programme zum Kommunizieren mit einem Benutzer und kann eine konventionelle graphische Benutzerschnittstelle (GUI) beinhalten. Das Benutzerschnittstellenmodul 1010 arbeitet mit den übrigen Systemkomponenten, wie sie hier beschrieben werden, zusammen.
  • Die Lokalisierungsmodule 1015 enthalten Routinen zum Identifizieren der Speicherstellen von E-Mails in dem LAN 810 gemäß 8 (beispielsweise der E-Mails 875 in dem Mailserver 850 und der E-Mails 865 in dem Client 840), der Speicherstellen der E-Mails 896 in dem ISP-Mailserver 894, der Speicherstellen von E-Mails 899 in dem Client 897, der Speicherstellen von E-Mails in dem globalen Server 835 (beispielsweise der Client-E-Mails 895 und der heruntergeladenen E-Mails 832), und der Speicherstellen der Ordnerstrukturen, in welchen die E-Mails gespeichert werden. Die Identifizierung der E-Mail-Speicherstellen kann implementiert werden unter Verwendung intelligenter Software, d.h. voreingestellter Speicheradressen oder des Registers des Systems oder unter Verwendung von Dialogboxen, um einen Benutzer zu befragen. Es versteht sich, daß die Lokalisierungsmodule 1015 die Identifizierung von E-Mail-Lokalisierung beim Herauffahren des Systems oder nach jeder Kommunikation mit dem globalen Server 835 vornehmen können, um aktualisierte Speicheradressen zu pflegen.
  • Das Synchronisierungsstartmodul 1020 enthält Routinen, um festzustellen, wann eine E-Mail-Synchronisierung ausgelöst werden soll. Beispielsweise kann das Synchronisierungsstartmodul 1020 E-Mail-Synchronisierung auf Anforderung des Benutzers, zu einer bestimmten Tageszeit, nach Ablauf bestimmter Zeitdauer, nach Empfang einer vorbestimmten Anzahl von E-Mails, nach einer Benutzeraktion, wie z. B. einem Abmelden oder bei ähnlichen Kriterien auslösen. Das Synchronisierungsstartmodul 1020 löst E-Mail-Synchronisierung aus, indem es das E-Mail-Synchronisierungsmodul 1025 (welches unten beschrieben wird), anweist, mit der Ausführung seiner Programme bzw. Routinen zu beginnen. Es versteht sich, daß die Kommunikation mit dem Synchronisierungsagenten 885 vorzugsweise aus dem LAN 810 heraus beginnt bzw. ausgelöst wird, da ein Sicherheitssystem, wie z. B. eine typische Firewall 870, eingehende Kommunikationen verhindert und ausgehende Kommunikationen erlaubt. Das Synch-Start-Modul 1020 kann das Kommunikationsmodul 1005 anweisen, die Kommunikationsverbindung mit dem Synchronisierungsagenten 885 des globalen Servers 885 bereitzustellen.
  • Das E-Mail-Synchronisierungsmodul 1025 enthält Routinen, um die E-Mail-Maschine 965 (9) anzuweisen, die Client-E-Mails 875 oder 896 von dem Mailserver 850 oder 894 oder von speziellen Ordnern auf dem Mailserver 850 oder 894 zu holen. Das E-Mail-Synchronisierungsmodul 1025 enthält auch Routinen, um die geholten E-Mails in einer oder mehreren Ordnerstrukturen als heruntergeladene E-Mails 865 oder 899 zu speichern. Die E-Mail-Maschine 965 kann Einrichtungen für das Identifizieren eines Übertragungsprotokolls enthalten, welches auch dem Mailserver 850 oder 894 bekannt ist. Beispielsweise kann die E-Mail-Maschine 965 Konfigurationsinformation von dem Mailserver 850 oder 894 anfordern, die das Protokoll, beispielsweise POP 3 anzeigt, welches von jenem verwendet wird. Dementsprechend implementiert die E-Mail-Maschine 965 das identifizierte Protokoll, wenn die E-Mails heruntergeladen werden.
  • Das E-Mail-Synchronisierungsmodul 1025 enthält weiterhin Routinen für den Vergleich des Empfangsdatums jeder heruntergeladenen E-Mail 865 oder 899 mit einer letzten Synchronisierungssignatur 1035 (wie z. B. dem letzten Synchronisierungsdatum und der Zeit), um festzustellen, welche E-Mails noch nicht an den globalen Server 835 gesendet wurden. Es versteht sich, daß in einer Ausführungsform, welche Client-E-Mails 875 oder 896 löscht, nachdem sie von dem Mailserver 850 oder 894 heruntergeladen wurden, das E-Mail-Synchronisierungsmodul 1025 keinen Vergleichstest mit den Client-E-Mails 875 oder 896 durchführen muß, die während der Synchronisierung heruntergeladen wurden. Diese Client-E-Mails 875 oder 896 sind in dieser Ausführungsform inhärent nicht gesendet worden.
  • Das E-Mail-Synchronisierungsmodul 1025 weist weiterhin Routinen für das Ausführen einer angemessenen Reaktion auf die Synchronisierung auf. Angemessene Reaktionen auf die Synchronisierung können Anweisungen an das Kommunikationsmodul 1005 umfassen, eine Kommunikationsverbindung mit dem Synchronisierungsagenten 885 des globalen Servers 835 bereitzustellen, Kopien jeder E-Mail an den globalen Server 835 zu senden, nur die Client-E-Mails 865 oder 896 an den globalen Server 835 umzuleiten (d.h. senden ohne eine Kopie zu behalten), oder die heruntergeladenen E-Mails 865 oder 899 und die Client-E-Mails 875 oder 896 an den globalen Server 835 umzuleiten. Um eine Kopie oder ein Original einer E-Mail zu senden, enthält das E-Mail-Synchronisierungsmodul 1025 einen Übersetzer 1040 für das Übersetzen der E-Mail von einem Format A oder Format B in das globale Format. Das E-Mail-Synchronisierungsmodul 1025 weist dann das E-Mail-Modul 960 der Webmaschine 955 an, die übersetzten E-Mails an den globalen Server 835 zu senden.
  • Die E-Mail-Synchronisierung kann eine Synchronisierung anderer Information umfassen, welche elektronischer Mail bzw. Post entspricht. Beispielsweise kann das E-Mail-Synchronisierungsmodul 1025 Routinen enthalten, um das Adreßbuch 945 zu untersuchen und mit einem Adreßbuch 1130 (11) auf dem globalen Server 835 zu synchronisieren. Die Untersuchung und Synchronisierung von Adreßbucheinträgen werden durchgeführt wie nachstehend unter Bezug auf die 1 bis 7 beschrieben. Im allgemeinen kann das E-Mail-Synchronisierungsmodul 1025 Versionsinformation untersuchen, welche das Datum und den Zeitpunkt der letzten Modifikation des Adreßbuches 945 auf dem Client 900 und Versionsinformation untersuchen, welche das Datum und den Zeitpunkt der letzten Synchronisierung des Adreßbuchs 1130 (11) auf dem globalen Server 835 anzeigt. Auf der Basis dieser Untersuchung führt das E-Mail-Synchronisierungsmodul 1025 in Reaktion darauf eine geeignete Synchronisationsaktion, wie z. B. das Senden der aktualisierten E-Mail-Adreßeinträge an den anderen Speicher aus. Das E-Mail-Synchronisierungsmodul 1025 kann ein allgemeines Synchronisierungsmodul 425 (4) und ein auf Inhalt beruhendes Synchronisierungsmodul 430 (4) umfassen.
  • 11 ist ein Blockdiagramm, welches Einzelheiten des globalen Servers 835 veranschaulicht, der eine CPU 1105, eine Kommunikationsschnittstelle 1110, eine Datenspeichereinrichtung 1120 und einen RAM 1125 umfaßt, die jeweils mit einem Signalbus 1115 verbunden sind. Die Kommunikationsschnittstelle 1110 ist über die globale Firewall 880 (8) mit dem Kommunikationskanal 825 verbunden.
  • Ein Betriebssystem 1135 enthält ein Programm zum Steuern der Verarbeitung durch die CPU 1105 und wird typischerweise in der Datenspeichereinrichtung 1120 gespeichert und für die Ausführung in den RAM 1125 geladen (wie dargestellt). Eine Web-Maschinen-Schnittstelle 890 ist ein Programm für die Kommunikation mit der Web-Maschine 833 oder der Web-Maschine 955 und um einen Zugriff auf vorbestimmte Inhalte bereitzustellen, welche Client-E-Mails 895, heruntergeladene E-Mails 832 und das Adreßbuch 1130 umfassen können. Die Webmaschinenschnittstelle 890 enthält eine E-Mail-Modul-Schnittstelle 1140 für die Kommunikation mit dem E-Mail-Modul 960 oder dem E-Mail-Modul 1355 (13), und für das Bereitstellen der Funktionen des Lesens und Schreibens von E-Mails.
  • Der Synchronisierungsagent 885, wie er am besten in 12 dargestellt ist, ist ebenfalls in der Datenspeichereinrichtung 1120 gespeichert und wird für die Ausführung in den RAM 1125 geladen. Der Synchronisierungsagent 885 steht mit dem E-Mail-Synchronisierungsmodul 1025 in Kommunikationsverbindung, um E-Mails und die E-Mails spezieller Ordnerstrukturen zu synchronisieren und um möglicherweise auch das Adreßbuch 945 zu synchronisieren. Der Synchronisierungsagent 885 wird unten unter Bezug auf 12 sowie in der in Bezug genommenen Patentanmeldung genauer beschrieben.
  • 12 ist ein Blockdiagramm, welches Einzelheiten des Synchronisierungsagenten 885 veranschaulicht, welcher ein Kommunikationsmodul 1205 (ähnlich dem oben unter Bezug auf 10 beschriebenen Kommunikationsmodul 1005 und ein E-Mail-Synchronisierungsmodul 210 (ähnlich dem E-Mail-Synchronisierungsmodul 1025, welches ebenfalls oben unter Bezug auf 10 beschrieben wurde, enthält.
  • Das Kommunikationsmodul 1205 enthält Routinen zum Komprimieren von Daten und Routinen für das Kommunizieren über das Computernetzwerk 820 (8) mit dem Kommunikationsmodul 1005 (10). Das Kommunikationsmodul 1205 kann weiterhin Routinen umfassen, um einen sicheren Kommunikationskanal durch die globale Firewall 880 und durch die LAN-Firewall 870 mit dem Kommunikationsmodul 1005 bereitzustellen.
  • Ähnlich dem E-Mail-Synchronisierungsmodul 1025 (10) enthält das E-Mail-Synchronisierungsmodul 1210 Routinen zum Untersuchen von Information, um zu bestimmen, ob irgend etwas geändert oder modifiziert und nicht mit dem Client 840 synchronisiert wurde (8). Dementsprechend kann das E-Mail-Synchronisierungsmodul 1210 feststellen, ob irgendwelche Adressen in dem Adreßbuch 1130 (11) kopiert und an einen Client 900 gesendet werden müssen. Weiterhin bestimmt das E-Mail-Synchronisierungsmodul 1210, wenn das System 1500 E-Mails an jedem der Client-Plätze synchronisiert, auch, ob irgendwelche der E-Mails 895 oder 832 hinzugefügt oder modifiziert und nicht mit einem Client 900 synchronisiert wurden.
  • Es versteht sich, daß das E-Mail-Synchronisierungsmodul 1210 seine eigene Kopie einer letzten Synchronisierungssignatur 1035 (nicht dargestellt) behalten kann oder die letzte Synchronisierungssignatur 1035 von dem Basissystem 970 anfordern kann. Das E-Mail-Synchronisierungsmodul 1210 umfaßt weiterhin Routinen zum Senden der Information, die als modifiziert festgestellt wurde, oder nur der Veränderungen an das E-Mail-Synchronisierungsmodul 1025.
  • 13 ist ein Blockdiagramm, welches Einzelheiten des entfernten Terminals 1505 veranschaulicht. Das entfernte Terminal 1505 enthält eine zentrale Verarbeitungseinheit (CPU) 1305, wie z. B. einen Intel Pentium®-Mikroprozessor oder einen Motorola Power PC®-Mikroprozessor. Eine Eingabeeinrichtung 1310, wie z. B. eine Tastatur und eine Maus und eine Ausgabeeinrichtung 1315, wie z. B. eine Anzeige mit einer Katodenstrahlröhre (CAT) sind über einen Signalbus 1320 mit der CPU 1305 verbunden. Eine Kommunikationsschnittstelle 1325 (wie z. B. ein Internetanschluß), eine Datenspeichereinrichtung 1330 (wie z. B. eine Magnetplatte) und ein Speicher mit wahlfreiem Zugriff (RAM) 1335 sind weiterhin über den Signalbus 1320 mit der CPU 1305 verbunden. Die Kommunikationsschnittstelle 1325 ist mit dem Signalbus 835 (8) verbunden.
  • Ein Betriebssystem 1350 enthält ein Programm zum Steuern der Verarbeitung durch die CPU 1305 und wird typischerweise in der Datenspeichereinrichtung 1330 gespeichert und für die Ausführung in den RAM 1335 (wie dargestellt) geladen. Die Webmaschine 833 wird ebenfalls typischerweise in der Datenspeichereinrichtung 1330 gespeichert und für die Ausführung in den RAM 1335 (wie dargestellt) geladen. Die Web-Maschine 833 enthält ein E-Mail-Modul 1355 für das Lesen und Schreiben elektronischer Post. Nachdem das entfernte Terminal 1505 an den globalen Server 835 angeschlossen ist bzw. Kontakt mit diesem hat, kommuniziert das E-Mail-Modul 1355 mit der E- Mail-Modul-Schnittstelle 1140, um Client-E-Mails 895 auszuwählen und herunterzuladen oder um heruntergeladene E-Mails 832 auszuwählen. Das E-Mail-Modul 1355 speichert die heruntergeladenen E-Mails von dem globalen Server 835 in der Datenspeichereinrichtung 1330 als „heruntergeladene E-Mails 1340". Alternativ kann das E-Mail-Modul 1355 die E-Mails 1340 nur in dem Raum 1335 speichern, so daß am Ende der Sitzung Kopien der E-Mails 1340 nicht in dem entfernten Terminal 1505 verbleiben. Das E-Mail-Modul 1355 ermöglichst es dem Benutzer, die E-Mails 1340 zu lesen, darauf zu antworten, sie weiterzuleiten, umzuleiten, etc. In ähnlicher Weise kann die Web-Maschine 833 einen Zugriff auf den Adreßblock 145 gewähren, so daß der Benutzer auf seine oder ihre E-Mail-Adreßeinträge zugreifen kann, die ansonsten in dem LAN 810 gespeichert sind.
  • 14 ist ein Flußdiagramm, welches ein Verfahren 1400 zum Synchronisieren von E-Mails in einem Computernetzwerk 1500 veranschaulicht. Das Verfahren 1400 beginnt mit dem Mailserver 850 oder 894, der in Schritt 1405 an einen Client 840 oder 897 adressierte E-Mails empfängt. Der Mailserver 850 oder 894 in Schritt 1410 speichert die empfangenen E-Mails in einer oder mehreren Ordnerstrukturen als Client-E-Mails 875 oder in einer oder mehreren Ordnerstrukturen als Client-E-Mails 896 (8). Die E-Mail-Maschine 965 ermöglicht in Schritt 1450 einem Benutzer, Client-E-Mails 875 oder 895 auszuwählen, die von dem Mailserver 850 oder 896 heruntergeladen werden. Wenn E-Mails ausgewählt sind, so lädt die E-Mail-Maschine 965 in Schritt 1420 die ausgewählten Client-E-Mails 875 oder 894 herunter und speichert sie in einer oder mehreren Ordnerstrukturen als heruntergeladene E-Mails 865 oder in einer oder mehreren Ordnerstrukturen als heruntergeladene E-Mails 899 (8). Wenn in Schritt 1415 E-Mails nicht ausgewählt werden, so springt das Verfahren 1400 zu Schritt 1425.
  • In Schritt 1425 stellt das Synchronisierungsstartmodul 1020 fest, ob vorbestimmte Startkriterien erfüllt sind, die anzeigen, daß es Zeit für eine E-Mail-Synchronisierung ist. Wie oben unter Bezug auf 4 festgestellt, können die vorbestimmten Startkriterien erfüllt sein bzw. werden, nachdem ein bestimmter Zeitabschnitt verstrichen ist, nachdem eine bestimmte Anzahl von E-Mails empfangen worden ist, zu einer bestimmten Tageszeit, nach einem bestimmten Ereignis, etc. Wenn es noch nicht Zeit für eine Synchronisierung ist, so wartet das Synchronisierungsstartmodul 1020 in Schritt 1430. Falls es ansonsten Zeit für eine Synchronisierung ist, so weist das E-Mail-Synchronisierungsmodul 1025 in Schritt 1435 die E-Mail-Maschine 965 an, Client-E-Mails 875 oder 896 oder Client-E-Mails 875 oder 896 spezielle Ordnerstrukturen herunterzuladen.
  • Das E-Mail-Synchronisierungsmodul 1025 bestimmt in Schritt 1440, ob irgendeine der heruntergeladenen E-Mails 865 oder 899 (welche die Client-E-Mails 875 oder 896 umfassen, die kurz zuvor heruntergeladen wurden) noch nicht an den globalen Server 835 gesendet wurden. Dieser Vergleich kann ausgeführt werden, indem das Datum und der Zeitpunkt, zu welchem die E-Mail empfangen wurde, mit einer letzten Synchronisierungssignatur 1035 verglichen wird, die das Datum und den Zeitpunkt der letzten Synchronisierung anzeigt. Wenn beispielsweise eine E-Mail nach dem Datum und Zeitpunkt der letzten Synchronisierung empfangen wurde, ist diese E-Mail noch nicht gesendet worden. Es versteht sich, daß in einer Ausführungsform, welche Client-E-Mails 875 und 896 aus dem Mailserver 850 oder 894 nach dem Herunterladen in den Client 840 oder 897 löscht, die E-Mail-Maschine 965 automatisch schlußfolgern kann, daß diese E-Mails nicht an den die E-Mail-Maschine 965 automatisch schlußfolgern kann, daß diese E-Mails nicht an den globalen Server 835 gesendet wurden. Wenn alle E-Mails (die synchronisiert werden sollen) an den globalen Server 835 gesendet worden sind, endet die Methode bzw. das Verfahren 1400. Ansonsten verwendet, wenn zumindest eine E-Mail noch nicht gesendet worden ist, das E-Mail-Synchronisierungsmodul 1025 in Schritt 1445 den Übersetzer 1040, um nicht gesendete E-Mails 865 oder 899 von dem Format A oder dem Format B in das globale Format zu übersetzen. Das E-Mail-Synchronisierungsmodul 1025 weist in Schritt 1450 die Web-Maschine 955 an, die übersetzte E-Mail an den globalen Server 835 zu senden, damit die Web-Maschinen-Schnittstelle 890 sie speichert. Dann endet das Verfahren 1400.
  • 15 ist ein Flußdiagramm, welches ein Verfahren 1500 für das Zugreifen auf die E-Mails von dem globalen Server 835 veranschaulicht. Das Verfahren 1500 beginnt damit, daß das E-Mail-Synchronisierungsmodul 1210 in Schritt 1505 E-Mails von dem Client 840 oder 897 empfängt. Das E-Mail-Synchronisierungsmodul 1210 speichert in Schritt 1510 die E-Mails in der Datenspeichereinrichtung 1120 in einer oder mehreren Ordnerstrukturen als Client-E-Mails 895 und als heruntergeladene E-Mails 832. Die Schnittstelle 890 der E-Mail-Maschine verwendet in Schritt 1515 HTML, um den Zugriff des E-Mail-Moduls auf ausgewählte Inhalte des globalen Servers 835 freizugeben. Der Zugriff auf die ausgewählten Inhalte wird oben genauer unter Bezug auf die 1 bis 7 beschrieben.
  • Die vorstehende Beschreibung der bevorzugten Ausführungsform der Erfindung ist lediglich beispielhaft und andere Variationen der oben beschriebenen Ausführungsformen und Verfahren können innerhalb des Schutzumfanges der beanspruchten Erfindung vorgesehen werden. Beispielsweise kann der globale Server 106, auch wenn er als eine einzelne Einrichtung dargestellt ist, mehrere über ein Netzwerk miteinander verbundene Computer umfassen. Komponenten einer Ausführungsform dieser Erfindung können implementiert werden unter Verwendung eines programmierten Mehrzweckcomputers, unter Verwendung anwendungsspezifischer integrierter Schaltkreise oder unter Verwendung eines Netzwerkes von miteinander verbundenen konventionellen Komponenten und Schaltkreisen.

Claims (40)

  1. System, welches aufweist: eine Abrufeinrichtung (950, 965, 960) zum Abrufen einer E-Mail aus einem ersten Mailspeicher (850, 894), eine Feststelleinrichtung (1025), welche mit der Abrufeinrichtung verbunden ist, um ein vorbestimmtes Kriterium zu verwenden, um festzustellen, ob eine abgerufene E-Mail oder eine Kopie oder eine Formatübersetzung derselben an einen zweiten Mailspeicher zu senden ist, eine Bereitstelleinrichtung (1005), welche mit der Feststelleinrichtung verbunden ist, wobei die Bereitstellungseinrichtung eine Sicherheitseinrichtung umfaßt, um aus einem Bereich innerhalb einer Firewall mit Hilfe eines Hypertexttransferprotokoll-Kanals durch die Firewall eine sichere Kommunikationsverbindung zu dem zweiten Mailspeicher bereitzustellen, und eine Sendeeinrichtung (1025, 955), die mit der Bereitstellungseinrichtung verbunden ist, um die E-Mail oder eine Kopie oder eine Formatübersetzung derselben über den Kommunikationskanal an den zweiten Mailspeicher zu senden.
  2. System nach Anspruch 1, wobei der Mailspeicher ein erstes Protokoll implementiert.
  3. System nach Anspruch 2, wobei der erste Mailspeicher auf einem Mailserver angeordnet ist.
  4. System nach einem der vorstehenden Ansprüche, wobei der erste Mailspeicher die E-Mails in einer Ordnerstruktur speichert und weiterhin Einrichtungen aufweist, um eine Ordnerstruktur für die Synchronisation aller E-Mails darin auszuwählen.
  5. System nach Anspruch 3 oder 4, wobei die Abrufeinrichtung eine E-Mailmaschine (965) für die Kommunikation mit dem Mailserver aufweist.
  6. System nach Anspruch 5, wobei die E-Mailmaschine das erste Protokoll, welches durch den Mailserver verwendet wird, implementiert.
  7. System nach Anspruch 6, wobei die E-Mailmaschine das erste Protokoll, welches von dem Mailserver verwendet wird, identifiziert.
  8. System nach einem der Ansprüche 5 bis 7, wobei die Feststellungseinrichtung ein E-Mail-Synchronisationsmodul aufweist.
  9. System nach Anspruch 1, wobei das vorbestimmte Kriterium eine Feststellung umfaßt, ob bereits E-Mail an den zweiten E-Mailspeicher gesendet worden ist.
  10. System nach Anspruch 9, wobei die Feststellung, ob eine E-Mail bereits an den zweiten Mailspeicher gesendet worden ist, durch Überprüfung eines Empfangsdatums, welches der E-Mail entspricht und einer letzten Synchronisierungssignatur, welche das letzte Datum der Synchronisation mit dem zweiten Mailspeicher anzeigt, erfolgt.
  11. System nach Anspruch 1, wobei die Bereitstellungseinrichtung ein Kommunikationsmodul aufweist.
  12. System nach Anspruch 11, wobei das Kommunikationsmodul die Sicherheitseinrichtung zum Bereitstellen eines sicheren Kommunikationskanals durch die Firewall enthält.
  13. System nach Anspruch 1, wobei die Sendeeinrichtung eine Webmaschine enthält.
  14. System nach Anspruch 1, welches weiterhin ein Synchronisationsstartmodul für die Verwendung eines Startkriteriums aufweist, um festzustellen, wann eine Synchronisierung mit dem zweiten Mailspeicher initiiert werden muß.
  15. System nach einem der vorstehenden Ansprüche, wobei das Hypertexttransferprotokoll HTTP ist.
  16. System nach einem der vorstehenden Ansprüche, wobei das Hypertexttransferprotokoll HTTP über SSL ist.
  17. System nach einem der vorstehenden Ansprüche, welches weiterhin eine Übersetzereinrichtung aufweist, um die E-Mail aus einem ersten E-Mailformat, wobei das erste E-Mailformat ein Format für den ersten Mailspeicher ist, in ein zweites E-Mailformat, wobei das zweite E-Mailformat ein Format für den zweiten Mailspeicher ist, zu übersetzen, bevor die Übersetzung der E-Mail an den zweiten Mailspeicher gesendet wird.
  18. E-Mailsystem, welches ein lokales (Bereichs)netzwerk (local area network), an welchem zumindest ein System von irgendeinem der vorstehend genannten Ansprüche angeschlossen ist, einen Mailserver (850), einschließlich des ersten Mailspeichers, und die Firewall (870) aufweist, wobei die Firewall eine Firewall für das lokale Netzwerk ist, wobei das System so betreibbar ist, daß es eine E-Mailsynchronisierung aus dem Bereich innerhalb der Firewall des lokalen Netzwerks (local area network) auslöst.
  19. E-Mailsystem nach Anspruch 18, welches einen globalen Mailserver aufweist, der den zweiten Mailspeicher enthält.
  20. E-Mailsystem nach Anspruch 19, welches einen dritten Mailspeicher aufweist, der an einem entfernten Terminal außerhalb der Firewall des lokalen Netzwerks (local area network) angeordnet ist.
  21. E-Mailsystem nach Anspruch 18, welches ein entfernt gelegenes Terminal aufweist, das den zweiten Mailspeicher enthält.
  22. E-Mailsystem nach Anspruch 20 oder 21, wobei das entfernte Terminal ein intelligentes Telefon aufweist.
  23. Verfahren zum Betreiben eines Computersystems, welches aufweist: Abrufen (1420) einer E-Mail aus einem ersten Mailspeicher, Verwenden (1140) eines vorbestimmten Kriteriums, um festzustellen, ob die abgeholte E-Mail oder eine Kopie oder eine Formatübersetzung derselben an einen zweiten Mailspeicher gesendet werden soll, Bereitstellen (1450) einer sicheren Kommunikation mit dem zweiten Mailspeicher aus dem Bereich innerhalb der Firewall heraus über einen Hypertexttransferprotokoll-Kommunikationskanal durch die Firewall hindurch, und Senden (1450) der E-Mail oder einer Kopie oder einer Formatübersetzung derselben an den zweiten Mailspeicher über den Kommunikationskanal, wenn das vorbestimmte Kriterium anzeigt, daß die E-Mail gesendet werden soll.
  24. Verfahren nach Anspruch 23, wobei der Mailspeicher ein erstes Protokoll implementiert.
  25. Verfahren nach Anspruch 24, wobei der erste Mailspeicher auf einem Mailserver angeordnet ist.
  26. Verfahren nach Anspruch 25, wobei der erste Mailspeicher die E-Mails in einer Ordnerstruktur speichert und welches weiterhin das Auswählen einer Ordnerstruktur für die Synchronisierung aller E-Mails darin aufweist.
  27. Verfahren nach Anspruch 26, wobei der Schritt des Abrufens des Verwenden des ersten Protokolls umfaßt.
  28. Verfahren nach Anspruch 27, wobei der Schritt des Abrufens den Schritt des Identifizierens des ersten Protokolls umfaßt.
  29. Verfahren nach einem der Ansprüche 23 bis 28, wobei der Schritt des Verwendens eines vorbestimmten Kriteriums die Feststellung umfaßt, ob die E-Mail bereits an den zweiten Mailspeicher gesendet worden ist.
  30. Verfahren nach Anspruch 29, wobei der Schritt des Feststellens, ob die E-Mail bereits an den zweiten E-Mailspeicher gesendet worden ist, das Überprüfen der Empfangsdaten umfaßt, welche der E-Mail und zumindest einer Synchronisationssignatur entsprechen, welche das letzte Datum der Synchronisation mit dem zweiten Mailspeicher anzeigt.
  31. Verfahren nach einem der Ansprüche 23 bis 30, wobei der zweite Mailspeicher an einem entfernten Ort lokalisiert ist und wobei der Schritt des Sendens das Kommunizieren der E-Mail über ein Computernetzwerk umfaßt.
  32. Verfahren nach einem der Ansprüche 23 bis 31, welches weiterhin das Verwenden eines Startkriteriums umfaßt, um zu bestimmen, wann die Synchronisation bzw. Abstimmung mit dem zweiten Mailspeicher initiiert werden soll.
  33. Verfahren nach einem der Ansprüche 23 bis 32, welches weiterhin das Übersetzen der E-Mail aus einem ersten E-Mailformat aufweist, wobei das erste E-Mailformat ein Format für den ersten Mailspeicher ist, und zwar in ein zweites E-Mailformat, wobei das zweite E-Mailformat ein Format für den zweiten Mailspeicher ist, und zwar vor dem Senden der Übersetzung der E-Mail an den zweiten Mailspeicher.
  34. Verfahren nach einem der Ansprüche 23 bis 33, wobei das Hypertexttransferprotokoll HTTP ist.
  35. Verfahren nach einem der Ansprüche 23 bis 33, wobei das Hypertexttransferprotokoll HTTP über SSL (bzw. HTTPS) ist.
  36. Verfahren nach einem der Ansprüche 23 bis 35, wobei der Schritt des Sendens das Senden der E-Mail oder einer Kopie oder einer Übersetzung derselben an einen globalen Mailserver umfaßt.
  37. Verfahren nach Anspruch 36, welches weiterhin das Weiterleiten der E-Mail oder einer Kopie oder einer Übersetzung derselben an einen dritten Mailspeicher umfaßt, der an einem entfernten Terminal außerhalb der Firewall angeordnet ist.
  38. Verfahren nach einem der Ansprüche 23 bis 37, wobei der Schritt des Sendens das Senden der E-Mail oder einer Kopie oder einer Übersetzung derselben an einen entfernten Anschluß bzw. an ein entferntes Terminal umfaßt.
  39. Verfahren nach Anspruch 37 oder 38, wobei das entfernte Terminal ein intelligentes Telefon aufweist.
  40. Computerlesbares Speichermedium, welches Programmcode speichert, um einen Clientcomputer zu veranlassen, daß er die Schritte nach dem Verfahren nach einem der Ansprüche 23 bis 39 ausführt.
DE69834640T 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung elektronischer Nachrichten über ein Netzwerk Revoked DE69834640T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/897,888 US5961590A (en) 1997-04-11 1997-07-22 System and method for synchronizing electronic mail between a client site and a central site
US897888 1997-07-22
PCT/US1998/014742 WO1999005620A1 (en) 1997-07-22 1998-07-21 System and method for synchronizing electronic mail across a network

Publications (2)

Publication Number Publication Date
DE69834640D1 DE69834640D1 (de) 2006-06-29
DE69834640T2 true DE69834640T2 (de) 2007-03-29

Family

ID=25408591

Family Applications (4)

Application Number Title Priority Date Filing Date
DE69840137T Expired - Lifetime DE69840137D1 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung von E-Mails in einem Netzwerk
DE69834640T Revoked DE69834640T2 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung elektronischer Nachrichten über ein Netzwerk
DE69840138T Expired - Lifetime DE69840138D1 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung von E-Mails in einem Netzwerk
DE69840139T Expired - Lifetime DE69840139D1 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung von E-Mails in einem Netzwerk

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69840137T Expired - Lifetime DE69840137D1 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung von E-Mails in einem Netzwerk

Family Applications After (2)

Application Number Title Priority Date Filing Date
DE69840138T Expired - Lifetime DE69840138D1 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung von E-Mails in einem Netzwerk
DE69840139T Expired - Lifetime DE69840139D1 (de) 1997-07-22 1998-07-21 System und Verfahren zur Synchronisierung von E-Mails in einem Netzwerk

Country Status (13)

Country Link
US (1) US5961590A (de)
EP (7) EP0996905B1 (de)
JP (1) JP3532854B2 (de)
CN (1) CN100338606C (de)
AT (4) ATE411573T1 (de)
CA (1) CA2296432A1 (de)
DE (4) DE69840137D1 (de)
DK (1) DK0996905T3 (de)
ES (4) ES2315960T3 (de)
HK (1) HK1028283A1 (de)
IL (1) IL134138A (de)
PT (1) PT996905E (de)
WO (1) WO1999005620A1 (de)

Families Citing this family (330)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023708A (en) * 1997-05-29 2000-02-08 Visto Corporation System and method for using a global translator to synchronize workspace elements across a network
US20060195595A1 (en) * 2003-12-19 2006-08-31 Mendez Daniel J System and method for globally and securely accessing unified information in a computer network
US6708221B1 (en) 1996-12-13 2004-03-16 Visto Corporation System and method for globally and securely accessing unified information in a computer network
US7287271B1 (en) 1997-04-08 2007-10-23 Visto Corporation System and method for enabling secure access to services in a computer network
US7206815B1 (en) 1997-01-29 2007-04-17 Palmsource Inc. Method and apparatus for synchronizing an email client on a portable computer system with an email client on a desktop computer
US6401112B1 (en) * 1997-01-29 2002-06-04 Palm, Inc. Method and apparatus for synchronizing an Email client on a portable computer system with an Email client on a desktop computer
US5895471A (en) 1997-07-11 1999-04-20 Unwired Planet, Inc. Providing a directory of frequently used hyperlinks on a remote server
WO1999005612A1 (de) * 1997-07-25 1999-02-04 Siemens Aktiengesellschaft Verfahren zur synchronisierten darstellung von netz-inhalten
US6125446A (en) * 1997-08-29 2000-09-26 Compaq Computer Corporation Computer architecture with automatic disabling of hardware/software features using satellite positioning data
US7003304B1 (en) 1997-09-19 2006-02-21 Thompson Investment Group, Llc Paging transceivers and methods for selectively retrieving messages
US6826407B1 (en) 1999-03-29 2004-11-30 Richard J. Helferich System and method for integrating audio and visual messaging
US6253061B1 (en) 1997-09-19 2001-06-26 Richard J. Helferich Systems and methods for delivering information to a transmitting and receiving device
US6636733B1 (en) 1997-09-19 2003-10-21 Thompson Trust Wireless messaging method
US6259892B1 (en) 1997-09-19 2001-07-10 Richard J. Helferich Pager transceiver and methods for performing action on information at desired times
US6087956A (en) 1997-09-19 2000-07-11 Helferich; Richard J. Paging transceivers and methods for selectively erasing information
JP3752799B2 (ja) * 1997-09-29 2006-03-08 村田機械株式会社 通信システム
US6370566B2 (en) * 1998-04-10 2002-04-09 Microsoft Corporation Generating meeting requests and group scheduling from a mobile device
US20040107208A1 (en) * 1997-12-09 2004-06-03 Seet Siew Shon Method and apparatus for bookmarking telephone numbers for efficient access by wireless phone devices
US6983138B1 (en) 1997-12-12 2006-01-03 Richard J. Helferich User interface for message access
US6157630A (en) * 1998-01-26 2000-12-05 Motorola, Inc. Communications system with radio device and server
US6219694B1 (en) * 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
US6779019B1 (en) 1998-05-29 2004-08-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device
US8516055B2 (en) 1998-05-29 2013-08-20 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device in a wireless data network
US6438585B2 (en) 1998-05-29 2002-08-20 Research In Motion Limited System and method for redirecting message attachments between a host system and a mobile data communication device
US7209949B2 (en) 1998-05-29 2007-04-24 Research In Motion Limited System and method for synchronizing information between a host system and a mobile data communication device
US7209955B1 (en) 1998-05-29 2007-04-24 Research In Motion Limited Notification system and method for a mobile data communication device
US7689721B2 (en) * 1998-05-29 2010-03-30 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device
US6463463B1 (en) 1998-05-29 2002-10-08 Research In Motion Limited System and method for pushing calendar event messages from a host system to a mobile data communication device
US7277424B1 (en) 1998-07-21 2007-10-02 Dowling Eric M Method and apparatus for co-socket telephony
EP0986225A1 (de) 1998-09-11 2000-03-15 Visto Corporation System und Verfahren zum gesicherten Synchronisierung von Mehrfachkopien eines Arbeitsraumelements in einem Netzwerk
US6131096A (en) * 1998-10-05 2000-10-10 Visto Corporation System and method for updating a remote database in a network
US6522875B1 (en) 1998-11-17 2003-02-18 Eric Morgan Dowling Geographical web browser, methods, apparatus and systems
US6983308B1 (en) * 1998-11-19 2006-01-03 Openwave Systems, Inc. Mail synchronization of remote and local mail systems
US6449634B1 (en) * 1999-01-29 2002-09-10 Digital Impact, Inc. Method and system for remotely sensing the file formats processed by an E-mail client
SE515459C2 (sv) * 1999-02-10 2001-08-06 Ericsson Telefon Ab L M Metod för att synkronisera en värddatabas och en fjärrdatabas
US6654779B1 (en) * 1999-04-14 2003-11-25 First Data Resources System and method for electronic mail (e-mail) address management
US7233992B1 (en) * 1999-04-26 2007-06-19 Comerica Bank-California Computerized method and system for managing the exchange and distribution of confidential documents
US6886017B1 (en) * 1999-04-30 2005-04-26 Elata Limited System and method for managing distribution of content to a device
US6356937B1 (en) * 1999-07-06 2002-03-12 David Montville Interoperable full-featured web-based and client-side e-mail system
US6618710B1 (en) 1999-07-07 2003-09-09 International Business Machines Corporation Apparatus and method for intelligent routing of electronic messages to pagers and computers
US6941374B1 (en) * 1999-08-05 2005-09-06 Amazon.Com, Inc. Hidden agent transfer protocol
US6526413B2 (en) * 1999-09-28 2003-02-25 Microsoft Corporation Architecture for a hierarchical folder structure in hand-held computers
US6606649B1 (en) 1999-09-28 2003-08-12 Microsoft Corporation Application programming interface functions for supporting an improved message store for hand-held computers
US6636897B1 (en) * 1999-09-28 2003-10-21 Microsoft Corporation Selective information subset synchronization based on single user action
US6578054B1 (en) 1999-10-04 2003-06-10 Microsoft Corporation Method and system for supporting off-line mode of operation and synchronization using resource state information
JP3501038B2 (ja) * 1999-10-06 2004-02-23 日本電気株式会社 携帯端末システム、これに用いる携帯端末
US20030140112A1 (en) * 1999-11-04 2003-07-24 Satish Ramachandran Electronic messaging system method and apparatus
JP4119063B2 (ja) * 1999-11-05 2008-07-16 株式会社東芝 メッセージ処理装置、メッセージ処理システム及びメッセージ処理方法
US6728714B1 (en) * 1999-11-30 2004-04-27 International Business Machines Corporation System and method for assigning unique identifier to deleted unopened original sender e-mail after delivery
JP2001167019A (ja) * 1999-12-13 2001-06-22 Sharp Corp 電子メールシンクロ装置
US6873841B1 (en) * 1999-12-16 2005-03-29 Koninklijke Philips Electronics N.V. Shared address-data service for personal CE equipment
AU2001226383A1 (en) * 2000-01-13 2001-07-24 Tut Systems, Inc. System and method for managing network access
US7509263B1 (en) * 2000-01-20 2009-03-24 Epocrates, Inc. Method and system for providing current industry specific data to physicians
US6694336B1 (en) 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US8156074B1 (en) 2000-01-26 2012-04-10 Synchronoss Technologies, Inc. Data transfer and synchronization system
US7505762B2 (en) 2004-02-27 2009-03-17 Fusionone, Inc. Wireless telephone data backup system
US6671757B1 (en) 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US8620286B2 (en) 2004-02-27 2013-12-31 Synchronoss Technologies, Inc. Method and system for promoting and transferring licensed content and applications
US7035878B1 (en) 2000-01-25 2006-04-25 Fusionone, Inc. Base rolling engine for data transfer and synchronization system
US7024457B1 (en) * 2000-02-17 2006-04-04 J2 Global Communications, Inc. E-mail synchronization between heterogeneous mail servers
GB2365260B (en) * 2000-02-24 2004-05-26 Ibm Database synchronisation for mobile computing devices
US6438584B1 (en) * 2000-03-07 2002-08-20 Letter Services, Inc. Automatic generation of graphically-composed correspondence via a text email-interface
US7739334B1 (en) 2000-03-17 2010-06-15 Visto Corporation System and method for automatically forwarding email and email events via a computer network to a server computer
US6735624B1 (en) * 2000-04-07 2004-05-11 Danger, Inc. Method for configuring and authenticating newly delivered portal device
US6721804B1 (en) 2000-04-07 2004-04-13 Danger, Inc. Portal system for converting requested data into a bytecode format based on portal device's graphical capabilities
US6865671B1 (en) * 2000-04-07 2005-03-08 Sendmail, Inc. Electronic mail system with authentication methodology for supporting relaying in a message transfer agent
US6701522B1 (en) 2000-04-07 2004-03-02 Danger, Inc. Apparatus and method for portal device authentication
US6742038B2 (en) 2000-04-07 2004-05-25 Danger, Inc. System and method of linking user identification to a subscriber identification module
AU2001250201A1 (en) * 2000-04-10 2001-10-23 Research In Motion Limited System and method for bundling information
US6789108B1 (en) * 2000-04-14 2004-09-07 Tmx Interactive Method and apparatus for dissemination of rich media
US7747782B2 (en) * 2000-04-26 2010-06-29 Novarra, Inc. System and method for providing and displaying information content
US7072984B1 (en) * 2000-04-26 2006-07-04 Novarra, Inc. System and method for accessing customized information over the internet using a browser for a plurality of electronic devices
US20040049737A1 (en) * 2000-04-26 2004-03-11 Novarra, Inc. System and method for displaying information content with selective horizontal scrolling
US7500188B1 (en) * 2000-04-26 2009-03-03 Novarra, Inc. System and method for adapting information content for an electronic device
US6684239B1 (en) * 2000-05-16 2004-01-27 At&T Corp. System and method for automatically publishing electronic mail messages on the internet
US6944651B2 (en) * 2000-05-19 2005-09-13 Fusionone, Inc. Single click synchronization of data from a public information store to a private information store
US8447967B1 (en) * 2000-06-29 2013-05-21 Datamotion, Inc. Controlled message distribution
US6804699B1 (en) 2000-07-18 2004-10-12 Palmone, Inc. Identifying and locating lost or stolen personal digital assistant devices via a landline- or wireless-connected web server
US7895334B1 (en) 2000-07-19 2011-02-22 Fusionone, Inc. Remote access communication architecture apparatus and method
US8073954B1 (en) 2000-07-19 2011-12-06 Synchronoss Technologies, Inc. Method and apparatus for a secure remote access system
US6839738B2 (en) 2000-12-28 2005-01-04 Pitney Bowes Inc. System and method for cleansing addresses for electronic messages
US6957248B2 (en) 2000-07-31 2005-10-18 Pitney Bowes Inc. System and method for forwarding electronic messages
US6895427B2 (en) 2000-12-28 2005-05-17 Pitney Bowes Inc. System and method for cleansing addresses for electronic messages
US7035902B1 (en) * 2000-08-11 2006-04-25 International Business Machines Corporation Method, article of manufacture and apparatus for processing an electronic mail document
US7546351B1 (en) 2000-08-17 2009-06-09 Mxgo Methods and systems for filtering, sorting, and dispatching messages to wired and wireless devices
US6925476B1 (en) 2000-08-17 2005-08-02 Fusionone, Inc. Updating application data including adding first change log to aggreagate change log comprising summary of changes
US7035932B1 (en) 2000-10-27 2006-04-25 Eric Morgan Dowling Federated multiprotocol communication
US6965914B2 (en) 2000-10-27 2005-11-15 Eric Morgan Dowling Negotiated wireless peripheral systems
US6901429B2 (en) 2000-10-27 2005-05-31 Eric Morgan Dowling Negotiated wireless peripheral security systems
US7587446B1 (en) 2000-11-10 2009-09-08 Fusionone, Inc. Acquisition and synchronization of digital media to a personal information space
US7818435B1 (en) 2000-12-14 2010-10-19 Fusionone, Inc. Reverse proxy mechanism for retrieving electronic content associated with a local network
CA2725700C (en) 2000-12-22 2015-11-24 Research In Motion Limited Wireless router system and method
WO2002054267A1 (en) * 2000-12-28 2002-07-11 Pitney Bowes Inc. System and method for cleansing addresses for electronic messages
US7543026B2 (en) * 2000-12-28 2009-06-02 Quine Douglas B System and method for address correction of electronic messages
CA2368404C (en) 2001-01-18 2005-08-09 Research In Motion Limited Unified messaging system and method
US20020103933A1 (en) * 2001-01-29 2002-08-01 Ross Garon Internet-access enabled device personalization
US7047285B2 (en) * 2001-02-16 2006-05-16 Microsoft Corporation System and method for providing a unified messaging scheme in a mobile device
US8615566B1 (en) 2001-03-23 2013-12-24 Synchronoss Technologies, Inc. Apparatus and method for operational support of remote network systems
US20040024910A1 (en) * 2001-06-01 2004-02-05 Marl Coyle B. Adaptive synchronization of service data
US7197541B1 (en) 2001-06-18 2007-03-27 Palm, Inc. Method and apparatus for automated personality transfer for a wireless enabled handheld device
US7930352B2 (en) * 2001-06-25 2011-04-19 At&T Intellectual Property Ii, L.P. System and method for sorting electronic communications
US6957259B1 (en) 2001-06-25 2005-10-18 Bellsouth Intellectual Property Corporation System and method for regulating emails by maintaining, updating and comparing the profile information for the email source to the target email statistics
US7133898B1 (en) * 2001-06-25 2006-11-07 Bellsouth Intellectual Property Corp. System and method for sorting e-mail using a vendor registration code and a vendor registration purpose code previously assigned by a recipient
US20020198975A1 (en) * 2001-06-26 2002-12-26 Bogia Douglas P. Method for managing an appliance
US6993522B2 (en) * 2001-06-27 2006-01-31 Microsoft Corporation System and method for resolving conflicts detected during a synchronization session
US6928458B2 (en) * 2001-06-27 2005-08-09 Microsoft Corporation System and method for translating synchronization information between two networks based on different synchronization protocols
GB2377143A (en) * 2001-06-29 2002-12-31 3G Scene Plc Internet security
US20030009595A1 (en) * 2001-07-09 2003-01-09 Roger Collins System and method for compressing data using field-based code word generation
US7064688B2 (en) * 2001-07-09 2006-06-20 Good Technology, Inc. System and method for compressing data on a bandwidth-limited network
US7243163B1 (en) 2001-08-07 2007-07-10 Good Technology, Inc. System and method for full wireless synchronization of a data processing apparatus with a messaging system
US7743119B2 (en) 2001-08-07 2010-06-22 Motorola, Inc. System and method for mapping identification codes
US7155483B1 (en) 2001-08-07 2006-12-26 Good Technology, Inc. Apparatus and method for conserving bandwidth by batch processing data transactions
US7962622B2 (en) * 2001-08-07 2011-06-14 Motorola Mobility, Inc. System and method for providing provisioning and upgrade services for a wireless device
US7596565B2 (en) * 2001-08-07 2009-09-29 Good Technology System and method for maintaining wireless file folders at a wireless device
US8301587B2 (en) * 2001-08-21 2012-10-30 Hewlett-Packard Development Company, L.P. Internet enabled computer system management
US20040205539A1 (en) * 2001-09-07 2004-10-14 Mak Mingchi Stephen Method and apparatus for iterative merging of documents
US7089305B2 (en) * 2001-09-25 2006-08-08 International Business Machines Corporation Conditional promotion of bookmarks
US20030070093A1 (en) * 2001-10-10 2003-04-10 International Business Machines Corporation Method for implementing a server-based, common communication identifier for multiple communication applications
US7317699B2 (en) 2001-10-26 2008-01-08 Research In Motion Limited System and method for controlling configuration settings for mobile communication devices and services
US9332058B2 (en) 2001-11-01 2016-05-03 Benhov Gmbh, Llc Local agent for remote file access system
US7136982B2 (en) 2001-11-09 2006-11-14 Danger, Inc. Apparatus and method for allocating memory blocks
CA2467404A1 (en) * 2001-11-15 2003-05-30 Visto Corporation System and methods for asychronous synchronization
US6988129B2 (en) 2001-11-26 2006-01-17 Pitney Bowes Inc. Method for providing address change notification in an electronic message forwarding system
DE60214590T2 (de) 2001-12-07 2007-09-13 Research In Motion Ltd., Waterloo Verfahren und vorrichtung zur steuerung der informationsverteilung zu mobilstationen
US7149780B2 (en) * 2001-12-14 2006-12-12 Pitney Bowes Inc. Method for determining e-mail address format rules
US8135609B2 (en) * 2002-01-08 2012-03-13 Microsoft Corporation Identifying and surveying subscribers
AU2003209194A1 (en) * 2002-01-08 2003-07-24 Seven Networks, Inc. Secure transport for mobile communication network
US7591020B2 (en) * 2002-01-18 2009-09-15 Palm, Inc. Location based security modification system and method
US6938045B2 (en) 2002-01-18 2005-08-30 Seiko Epson Corporation Image server synchronization
US20030177171A1 (en) * 2002-01-22 2003-09-18 Brown Bruce Loring Electronic mail retrieval
US6909910B2 (en) 2002-02-01 2005-06-21 Microsoft Corporation Method and system for managing changes to a contact database
GB0202600D0 (en) * 2002-02-05 2002-03-20 Ibm Consolidation of replicated data
US7200668B2 (en) * 2002-03-05 2007-04-03 Sun Microsystems, Inc. Document conversion with merging
US7478170B2 (en) * 2002-03-05 2009-01-13 Sun Microsystems, Inc. Generic infrastructure for converting documents between formats with merge capabilities
US7340534B2 (en) * 2002-03-05 2008-03-04 Sun Microsystems, Inc. Synchronization of documents between a server and small devices
US7296243B2 (en) 2002-03-19 2007-11-13 Aol Llc Animating display motion
US7162513B1 (en) 2002-03-27 2007-01-09 Danger, Inc. Apparatus and method for distributing electronic messages to a wireless data processing device using a multi-tiered queuing architecture
US7155725B1 (en) 2002-03-27 2006-12-26 Danger, Inc. Apparatus and method for coordinating multiple e-mail accounts
US7447799B2 (en) * 2002-04-24 2008-11-04 Good Technology, Inc. System and method for automatically updating a wireless device
JP4149199B2 (ja) * 2002-06-05 2008-09-10 富士通株式会社 携帯端末補助装置、データ同期方法および携帯端末装置
US9813514B2 (en) 2002-06-12 2017-11-07 Good Technology Holdings Limited Information repository system including a wireless device and related method
US8230026B2 (en) 2002-06-26 2012-07-24 Research In Motion Limited System and method for pushing information between a host system and a mobile data communication device
US8516034B1 (en) 2002-07-08 2013-08-20 Good Technology Software, Inc System and method for modifying application behavior based on network bandwidth
US7849140B2 (en) * 2002-08-29 2010-12-07 Oracle America, Inc. Peer-to-peer email messaging
US7069326B1 (en) 2002-09-27 2006-06-27 Danger, Inc. System and method for efficiently managing data transports
US7062512B1 (en) 2002-09-27 2006-06-13 Danger, Inc. System and method for processing identification codes
US20090125591A1 (en) * 2002-09-30 2009-05-14 Ficus Kirkpatrick Instant messaging proxy apparatus and method
US7373144B1 (en) 2002-09-30 2008-05-13 Danger, Inc. System and method for automatically providing user status in a messaging service
US7383303B1 (en) 2002-09-30 2008-06-03 Danger, Inc. System and method for integrating personal information management and messaging applications
US7107349B2 (en) * 2002-09-30 2006-09-12 Danger, Inc. System and method for disabling and providing a notification for a data processing device
US7437405B1 (en) 2002-10-01 2008-10-14 Danger, Inc. System and method for managing data objects in a wireless device
US20070283047A1 (en) * 2002-10-01 2007-12-06 Theis Ronald L A System and method for processing alphanumeric characters for display on a data processing device
US20080261633A1 (en) 2002-10-22 2008-10-23 Research In Motion Limited System and Method for Pushing Information from a Host System to a Mobile Data Communication Device
US7853563B2 (en) 2005-08-01 2010-12-14 Seven Networks, Inc. Universal data aggregation
US7917468B2 (en) 2005-08-01 2011-03-29 Seven Networks, Inc. Linking of personal information management data
US8468126B2 (en) 2005-08-01 2013-06-18 Seven Networks, Inc. Publishing data in an information community
US20040181580A1 (en) * 2003-03-11 2004-09-16 Etienne Baranshamaje Method, computer useable medium, and system for portable email messaging
JP2004297792A (ja) * 2003-03-13 2004-10-21 Ricoh Co Ltd 画像形成装置及び機能キー割り付け方法
US20040267887A1 (en) * 2003-06-30 2004-12-30 Berger Kelly D. System and method for dynamically managing presence and contact information
US7117445B2 (en) 2003-06-30 2006-10-03 Danger, Inc. Multi-mode communication apparatus and interface for contacting a user
US8762577B2 (en) * 2003-06-30 2014-06-24 Apple Inc. Method and system for providing network synchronization with a unified messaging system
WO2005010715A2 (en) 2003-07-21 2005-02-03 Fusionone, Inc. Device message management system
US20050033863A1 (en) * 2003-08-07 2005-02-10 Sierra Wireless, Inc. A Canadian Corp. Data link characteristic cognizant electronic mail client
US7343179B1 (en) 2003-08-13 2008-03-11 Danger Research System and method for previewing and purchasing ring tones for a mobile device
US8238696B2 (en) 2003-08-21 2012-08-07 Microsoft Corporation Systems and methods for the implementation of a digital images schema for organizing units of information manageable by a hardware/software interface system
US7401104B2 (en) * 2003-08-21 2008-07-15 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US8166101B2 (en) 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
US8880735B2 (en) * 2003-09-05 2014-11-04 Sierra Wireless, Inc. Mail server based application record synchronization
CN1604103A (zh) * 2003-09-30 2005-04-06 国际商业机器公司 自动建立和配置许可模型和策略的方法
EP1522932B1 (de) * 2003-10-08 2006-07-19 Alcatel Schnelle Datenbankreplikation
US7644376B2 (en) 2003-10-23 2010-01-05 Microsoft Corporation Flexible architecture for notifying applications of state changes
US7634509B2 (en) 2003-11-07 2009-12-15 Fusionone, Inc. Personal information space management system and method
GB0329200D0 (en) * 2003-12-17 2004-01-21 Ibm Updating a deferred copy of a data message
US20050165717A1 (en) * 2004-01-22 2005-07-28 International Business Machines Corp. Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server
US7184753B2 (en) * 2004-01-22 2007-02-27 Research In Motion Limited Mailbox pooling pre-empting criteria
US8566399B2 (en) * 2004-02-27 2013-10-22 Blackberry Limited Method and system for synchronizing a drafts folder
US7613777B2 (en) * 2004-03-11 2009-11-03 Microsoft Corporation Rapidly obtaining a subset of message data from a server for filtering
US7778962B2 (en) * 2004-04-30 2010-08-17 Microsoft Corporation Client store synchronization through intermediary store change packets
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
CN1998224A (zh) 2004-05-12 2007-07-11 富盛旺公司 高级联络识别系统
US8103723B1 (en) * 2004-10-07 2012-01-24 Google Inc. Message server that retains messages deleted by one client application for access by another client application
US8010082B2 (en) 2004-10-20 2011-08-30 Seven Networks, Inc. Flexible billing architecture
WO2006045102A2 (en) * 2004-10-20 2006-04-27 Seven Networks, Inc. Method and apparatus for intercepting events in a communication system
US7643818B2 (en) * 2004-11-22 2010-01-05 Seven Networks, Inc. E-mail messaging to/from a mobile terminal
US7706781B2 (en) 2004-11-22 2010-04-27 Seven Networks International Oy Data security in a mobile e-mail service
FI117152B (fi) 2004-12-03 2006-06-30 Seven Networks Internat Oy Sähköpostiasetusten käyttöönotto matkaviestimelle
EP1828932A4 (de) * 2004-12-10 2008-03-05 Seven Networks Internat Oy Datenbank-synchronisation
FI120165B (fi) 2004-12-29 2009-07-15 Seven Networks Internat Oy Tietokannan synkronointi matkaviestinverkon kautta
CA2493907A1 (en) * 2005-01-24 2006-07-24 Oz Communications Wireless e-mail system
US7752633B1 (en) 2005-03-14 2010-07-06 Seven Networks, Inc. Cross-platform event engine
US9069436B1 (en) 2005-04-01 2015-06-30 Intralinks, Inc. System and method for information delivery based on at least one self-declared user attribute
EP1872251B1 (de) 2005-04-18 2015-10-21 BlackBerry Limited Verfahren zur bereitstellung von privilegienverwaltung für drahtlose anwendungen
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
US7796742B1 (en) 2005-04-21 2010-09-14 Seven Networks, Inc. Systems and methods for simplified provisioning
US20060277322A1 (en) * 2005-06-03 2006-12-07 Nokia Corporation System and method for implementing reference-based electronic mail compression
WO2006136661A1 (en) * 2005-06-21 2006-12-28 Seven Networks International Oy Network-initiated data transfer in a mobile network
WO2006136660A1 (en) * 2005-06-21 2006-12-28 Seven Networks International Oy Maintaining an ip connection in a mobile network
US7710912B1 (en) 2005-07-11 2010-05-04 Microsoft Corporation Managing content synchronization between a data service and a data processing device
US8069166B2 (en) 2005-08-01 2011-11-29 Seven Networks, Inc. Managing user-to-user contact with inferred presence information
US8731542B2 (en) 2005-08-11 2014-05-20 Seven Networks International Oy Dynamic adjustment of keep-alive message intervals in a mobile network
US20070299972A1 (en) * 2005-08-12 2007-12-27 Consilient Technologies Corporation Relay of enterprise messaging system events among client devices and one or more enterprise messaging systems
US8176410B1 (en) * 2005-09-13 2012-05-08 Adobe Systems Incorporated System and/or method for content cropping
ES2355041T3 (es) * 2005-09-29 2011-03-22 Teamon Systems, Inc. Sistema y método para reconciliar mensajes de correo electrónico entre un dispositivo de comunicaciones inalámbricas móviles y un buzón de correo electrónico.
US20070130463A1 (en) * 2005-12-06 2007-06-07 Eric Chun Wah Law Single one-time password token with single PIN for access to multiple providers
US20070130462A1 (en) * 2005-12-06 2007-06-07 Law Eric C W Asynchronous encryption for secured electronic communications
US20070125840A1 (en) * 2005-12-06 2007-06-07 Boncle, Inc. Extended electronic wallet management
US20070125838A1 (en) * 2005-12-06 2007-06-07 Law Eric C W Electronic wallet management
US7664067B2 (en) * 2005-12-15 2010-02-16 Microsoft Corporation Preserving socket connections over a wireless network
US7613955B2 (en) * 2006-01-06 2009-11-03 Microsoft Corporation Collecting debug data from a wireless device
CN100426294C (zh) * 2006-02-20 2008-10-15 腾讯科技(深圳)有限公司 一种在互联网发布信息的方法
US7769395B2 (en) 2006-06-20 2010-08-03 Seven Networks, Inc. Location-based operations and messaging
US7620392B1 (en) 2006-02-27 2009-11-17 Good Technology, Inc. Method and system for distributing and updating software in wireless devices
US20070220271A1 (en) * 2006-03-15 2007-09-20 Law Eric C W Online creation and delivery of cryptographically verifiable one-time password tokens
US20070220253A1 (en) * 2006-03-15 2007-09-20 Law Eric C W Mutual authentication between two parties using two consecutive one-time passwords
US20090143059A1 (en) * 2006-05-02 2009-06-04 Danger, Inc. System and method remote servicing of a wireless data processing device
US7689606B2 (en) * 2006-05-02 2010-03-30 Mypoints.Com Inc. System and method of efficiently generating and sending bulk emails
US20080034216A1 (en) * 2006-08-03 2008-02-07 Eric Chun Wah Law Mutual authentication and secure channel establishment between two parties using consecutive one-time passwords
US7574444B2 (en) * 2006-11-15 2009-08-11 Palm, Inc. Device-side data de-duping
US8135798B2 (en) * 2006-11-15 2012-03-13 Hewlett-Packard Development Company, L.P. Over-the-air device services and management
US20080115141A1 (en) * 2006-11-15 2008-05-15 Bharat Welingkar Dynamic resource management
US20080115152A1 (en) 2006-11-15 2008-05-15 Bharat Welingkar Server-controlled heartbeats
US7603435B2 (en) * 2006-11-15 2009-10-13 Palm, Inc. Over-the-air device kill pill and lock
US20080133775A1 (en) * 2006-11-30 2008-06-05 Intellisync Corporation Method, Apparatus and Computer Program Product for Providing Intelligent Synchronization
WO2008101072A1 (en) * 2007-02-15 2008-08-21 Teamon Systems, Inc. Email communications system with wireless device move reconciliation features and related methods
US20080228880A1 (en) * 2007-03-12 2008-09-18 Microsoft Corporation Managed code mapi apis
US8224919B2 (en) 2007-04-04 2012-07-17 Research In Motion Limited Mobile communications system including intermediate service provider and related methods
US9166941B2 (en) * 2007-04-24 2015-10-20 Microsoft Technology Licensing, Llc Synchronizing email messages between external and local email servers and/or a wireless device
US8179872B2 (en) 2007-05-09 2012-05-15 Research In Motion Limited Wireless router system and method
US8693494B2 (en) 2007-06-01 2014-04-08 Seven Networks, Inc. Polling
US8805425B2 (en) 2007-06-01 2014-08-12 Seven Networks, Inc. Integrated messaging
US7720920B2 (en) * 2007-06-27 2010-05-18 Microsoft Corporation Client side based data synchronization and storage
US11226947B1 (en) 2007-10-10 2022-01-18 United Services Automobile Association (Usaa) Systems and methods for storing time-series data
US9195700B1 (en) * 2007-10-10 2015-11-24 United Services Automobile Association (Usaa) Systems and methods for storing time-series data
US8364181B2 (en) 2007-12-10 2013-01-29 Seven Networks, Inc. Electronic-mail filtering for mobile devices
US8793305B2 (en) 2007-12-13 2014-07-29 Seven Networks, Inc. Content delivery to a mobile device from a content service
US9002828B2 (en) 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
US8181111B1 (en) 2007-12-31 2012-05-15 Synchronoss Technologies, Inc. System and method for providing social context to digital activity
US8107921B2 (en) 2008-01-11 2012-01-31 Seven Networks, Inc. Mobile virtual network operator
US8862657B2 (en) 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20090193338A1 (en) 2008-01-28 2009-07-30 Trevor Fiatal Reducing network and battery consumption during content delivery and playback
US8787947B2 (en) 2008-06-18 2014-07-22 Seven Networks, Inc. Application discovery on mobile devices
US8078158B2 (en) * 2008-06-26 2011-12-13 Seven Networks, Inc. Provisioning applications for a mobile device
US8909759B2 (en) 2008-10-10 2014-12-09 Seven Networks, Inc. Bandwidth measurement
DE102009022764B4 (de) 2009-05-27 2011-05-26 Rückert, Tobias System und Verfahren zur Bearbeitung elektronischer Nachrichten
US8255006B1 (en) 2009-11-10 2012-08-28 Fusionone, Inc. Event dependent notification system and method
WO2011126889A2 (en) 2010-03-30 2011-10-13 Seven Networks, Inc. 3d mobile user interface with configurable workspace management
US8838783B2 (en) 2010-07-26 2014-09-16 Seven Networks, Inc. Distributed caching for resource and mobile network traffic management
GB2495877B (en) 2010-07-26 2013-10-02 Seven Networks Inc Distributed implementation of dynamic wireless traffic policy
EP2599280A2 (de) 2010-07-26 2013-06-05 Seven Networks, Inc. Verkehrsoptimierung bei einer mobilen anwendung
EP3651028A1 (de) 2010-07-26 2020-05-13 Seven Networks, LLC Koordinierung eines mobilnetzwerkverkehrs zwischen mehreren anwendungen
US8943428B2 (en) 2010-11-01 2015-01-27 Synchronoss Technologies, Inc. System for and method of field mapping
US8843153B2 (en) 2010-11-01 2014-09-23 Seven Networks, Inc. Mobile traffic categorization and policy for network use optimization while preserving user experience
US8190701B2 (en) 2010-11-01 2012-05-29 Seven Networks, Inc. Cache defeat detection and caching of content addressed by identifiers intended to defeat cache
WO2012060995A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US8166164B1 (en) 2010-11-01 2012-04-24 Seven Networks, Inc. Application and network-based long poll request detection and cacheability assessment therefor
US8484314B2 (en) 2010-11-01 2013-07-09 Seven Networks, Inc. Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US8326985B2 (en) 2010-11-01 2012-12-04 Seven Networks, Inc. Distributed management of keep-alive message signaling for mobile network resource conservation and optimization
CN103620576B (zh) 2010-11-01 2016-11-09 七网络公司 适用于移动应用程序行为和网络条件的缓存
US9060032B2 (en) 2010-11-01 2015-06-16 Seven Networks, Inc. Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
US9330196B2 (en) 2010-11-01 2016-05-03 Seven Networks, Llc Wireless traffic management system cache optimization using http headers
US8903954B2 (en) 2010-11-22 2014-12-02 Seven Networks, Inc. Optimization of resource polling intervals to satisfy mobile device requests
CA2798523C (en) 2010-11-22 2015-02-24 Seven Networks, Inc. Aligning data transfer to optimize connections established for transmission over a wireless network
GB2501416B (en) 2011-01-07 2018-03-21 Seven Networks Llc System and method for reduction of mobile network traffic used for domain name system (DNS) queries
US8316098B2 (en) 2011-04-19 2012-11-20 Seven Networks Inc. Social caching for device resource sharing and management
EP2621144B1 (de) 2011-04-27 2014-06-25 Seven Networks, Inc. System und Verfahren zur Erstellung von Abfragen über eine mobile Vorrichtung auf Basis atomisierter Verfahren zur Verkehrsentlastung für mobile Netzwerke
EP2702500B1 (de) 2011-04-27 2017-07-19 Seven Networks, LLC Erkennung und bewahrung eines systemzustands zur erfüllung von anwendungsanfragen in einem verteilten proxy- und cachesystem
WO2013015995A1 (en) 2011-07-27 2013-01-31 Seven Networks, Inc. Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network
US9230243B2 (en) * 2011-10-13 2016-01-05 Dassault Systemes Collaborative design using duplicated workspaces
US8934414B2 (en) 2011-12-06 2015-01-13 Seven Networks, Inc. Cellular or WiFi mobile traffic optimization based on public or private network destination
US8868753B2 (en) 2011-12-06 2014-10-21 Seven Networks, Inc. System of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation
US9277443B2 (en) 2011-12-07 2016-03-01 Seven Networks, Llc Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol
WO2013086455A1 (en) 2011-12-07 2013-06-13 Seven Networks, Inc. Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation
US8713646B2 (en) 2011-12-09 2014-04-29 Erich Stuntebeck Controlling access to resources on a network
EP2792188B1 (de) 2011-12-14 2019-03-20 Seven Networks, LLC Mobilfunknetzbenachrichtigung und nutzungsanalysesystem sowie verfahren mittels aggregation von daten in einem verteilten verkehrsoptimierungssystem
WO2013090821A1 (en) 2011-12-14 2013-06-20 Seven Networks, Inc. Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization
US9832095B2 (en) 2011-12-14 2017-11-28 Seven Networks, Llc Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic
WO2013103988A1 (en) 2012-01-05 2013-07-11 Seven Networks, Inc. Detection and management of user interactions with foreground applications on a mobile device in distributed caching
WO2013116856A1 (en) 2012-02-02 2013-08-08 Seven Networks, Inc. Dynamic categorization of applications for network access in a mobile network
WO2013116852A1 (en) 2012-02-03 2013-08-08 Seven Networks, Inc. User as an end point for profiling and optimizing the delivery of content and data in a wireless network
US10257194B2 (en) 2012-02-14 2019-04-09 Airwatch Llc Distribution of variably secure resources in a networked environment
TWI497948B (zh) * 2012-02-14 2015-08-21 Htc Corp 行動裝置的動態郵件同步方法、系統及電腦程式產品
US9705813B2 (en) 2012-02-14 2017-07-11 Airwatch, Llc Controlling distribution of resources on a network
US9680763B2 (en) 2012-02-14 2017-06-13 Airwatch, Llc Controlling distribution of resources in a network
US10404615B2 (en) 2012-02-14 2019-09-03 Airwatch, Llc Controlling distribution of resources on a network
US9251360B2 (en) 2012-04-27 2016-02-02 Intralinks, Inc. Computerized method and system for managing secure mobile device content viewing in a networked secure collaborative exchange environment
US9253176B2 (en) 2012-04-27 2016-02-02 Intralinks, Inc. Computerized method and system for managing secure content sharing in a networked secure collaborative exchange environment
JP6004408B2 (ja) 2012-03-30 2016-10-05 シンクロノス テクノロジーズ インコーポレイテッド 安全移動体フレームワーク
US8812695B2 (en) 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
WO2013155208A1 (en) 2012-04-10 2013-10-17 Seven Networks, Inc. Intelligent customer service/call center services enhanced using real-time and historical mobile application and traffic-related statistics collected by a distributed caching system in a mobile network
AU2013251304B2 (en) 2012-04-27 2018-12-20 Intralinks, Inc. Computerized method and system for managing networked secure collaborative exchange
US9553860B2 (en) 2012-04-27 2017-01-24 Intralinks, Inc. Email effectivity facility in a networked secure collaborative exchange environment
CN103426079A (zh) * 2012-06-20 2013-12-04 中兴通讯股份有限公司 邮件发送方法及装置
WO2014011216A1 (en) 2012-07-13 2014-01-16 Seven Networks, Inc. Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications
EP2698956A1 (de) * 2012-08-13 2014-02-19 Samsung Electronics Co., Ltd Verfahren und elektronische Vorrichtung zur Synchronisierung von E-Mails
US9161258B2 (en) 2012-10-24 2015-10-13 Seven Networks, Llc Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion
US8978110B2 (en) 2012-12-06 2015-03-10 Airwatch Llc Systems and methods for controlling email access
US8826432B2 (en) 2012-12-06 2014-09-02 Airwatch, Llc Systems and methods for controlling email access
US8862868B2 (en) 2012-12-06 2014-10-14 Airwatch, Llc Systems and methods for controlling email access
US9021037B2 (en) 2012-12-06 2015-04-28 Airwatch Llc Systems and methods for controlling email access
US8832785B2 (en) 2012-12-06 2014-09-09 Airwatch, Llc Systems and methods for controlling email access
US9307493B2 (en) 2012-12-20 2016-04-05 Seven Networks, Llc Systems and methods for application management of mobile device radio state promotion and demotion
US9241314B2 (en) 2013-01-23 2016-01-19 Seven Networks, Llc Mobile device with application or context aware fast dormancy
US8874761B2 (en) 2013-01-25 2014-10-28 Seven Networks, Inc. Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US9326185B2 (en) 2013-03-11 2016-04-26 Seven Networks, Llc Mobile network congestion recognition for optimization of mobile traffic
US9473417B2 (en) 2013-03-14 2016-10-18 Airwatch Llc Controlling resources used by computing devices
US20140280955A1 (en) 2013-03-14 2014-09-18 Sky Socket, Llc Controlling Electronically Communicated Resources
US8997187B2 (en) 2013-03-15 2015-03-31 Airwatch Llc Delegating authorization to applications on a client device in a networked environment
US9787686B2 (en) 2013-04-12 2017-10-10 Airwatch Llc On-demand security policy activation
US8914013B2 (en) 2013-04-25 2014-12-16 Airwatch Llc Device management macros
US9219741B2 (en) 2013-05-02 2015-12-22 Airwatch, Llc Time-based configuration policy toggling
US9900261B2 (en) 2013-06-02 2018-02-20 Airwatch Llc Shared resource watermarking and management
US9584437B2 (en) 2013-06-02 2017-02-28 Airwatch Llc Resource watermarking and management
US9270777B2 (en) 2013-06-06 2016-02-23 Airwatch Llc Social media and data sharing controls for data security purposes
US8775815B2 (en) 2013-07-03 2014-07-08 Sky Socket, Llc Enterprise-specific functionality watermarking and management
US8756426B2 (en) 2013-07-03 2014-06-17 Sky Socket, Llc Functionality watermarking and management
US8806217B2 (en) 2013-07-03 2014-08-12 Sky Socket, Llc Functionality watermarking and management
US9065765B2 (en) 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
US9112749B2 (en) 2013-07-25 2015-08-18 Airwatch Llc Functionality management via application modification
US9226155B2 (en) 2013-07-25 2015-12-29 Airwatch Llc Data communications management
US9665723B2 (en) 2013-08-15 2017-05-30 Airwatch, Llc Watermarking detection and management
US9516005B2 (en) 2013-08-20 2016-12-06 Airwatch Llc Individual-specific content management
US9185099B2 (en) 2013-09-23 2015-11-10 Airwatch Llc Securely authorizing access to remote resources
US9544306B2 (en) 2013-10-29 2017-01-10 Airwatch Llc Attempted security breach remediation
US9258301B2 (en) 2013-10-29 2016-02-09 Airwatch Llc Advanced authentication techniques
WO2015073708A1 (en) 2013-11-14 2015-05-21 Intralinks, Inc. Litigation support in cloud-hosted file sharing and collaboration
US10838972B2 (en) 2014-03-13 2020-11-17 Microsoft Technology Licensing, Llc Storing service items in association with views
US9613190B2 (en) 2014-04-23 2017-04-04 Intralinks, Inc. Systems and methods of secure data exchange
US9659170B2 (en) 2015-01-02 2017-05-23 Senteon LLC Securing data on untrusted devices
US10587564B2 (en) * 2015-03-05 2020-03-10 Microsoft Technology Licensing, Llc Tracking electronic mail messages in a separate computing system
US10033702B2 (en) 2015-08-05 2018-07-24 Intralinks, Inc. Systems and methods of secure data exchange

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4831582A (en) * 1986-11-07 1989-05-16 Allen-Bradley Company, Inc. Database access machine for factory automation network
US4897781A (en) * 1987-02-13 1990-01-30 International Business Machines Corporation System and method for using cached data at a local node after re-opening a file at a remote node in a distributed networking environment
US4875159A (en) * 1987-12-22 1989-10-17 Amdahl Corporation Version management system using plural control fields for synchronizing two versions of files in a multiprocessor system
US5263157A (en) * 1990-02-15 1993-11-16 International Business Machines Corporation Method and system for providing user access control within a distributed data processing system by the exchange of access control profiles
US5519606A (en) * 1992-01-21 1996-05-21 Starfish Software, Inc. System and methods for appointment reconciliation
US5392390A (en) * 1992-04-10 1995-02-21 Intellilink Corp. Method for mapping, translating, and dynamically reconciling data between disparate computer platforms
US5581749A (en) * 1992-12-21 1996-12-03 Thedow Chemical Company System and method for maintaining codes among distributed databases using a global database
US5386564A (en) * 1993-02-24 1995-01-31 Hewlett-Packard Company Conversion of data and objects across classes in an object management system
US5799318A (en) * 1993-04-13 1998-08-25 Firstfloor Software Method and apparatus for collecting and displaying information from diverse computer resources
JPH06324928A (ja) * 1993-05-14 1994-11-25 Mitsubishi Electric Corp ログ生成装置とファイルの異なるバージョンの調停のための装置及び異なる場所にあるコンピュータファイルの異なるバージョンを調停するための装置
EP0631419B1 (de) * 1993-06-22 1996-03-27 Vmx Inc. Elektronisches Mitteilungssystem mit integrierten Sprachnachrichten
DE69432503T2 (de) * 1993-10-08 2003-12-24 Ibm Informationsarchivierungssystem mit objektabhängiger Funktionalität
US5627997A (en) * 1994-06-07 1997-05-06 Microsoft Corporation Method and system for converting computer mail messages using an extensible set of conversion routines
US5678039A (en) * 1994-09-30 1997-10-14 Borland International, Inc. System and methods for translating software into localized versions
US5652884A (en) * 1994-11-14 1997-07-29 Object Technology Licensing Corp. Method and apparatus for dynamic update of an existing object in an object editor
US5623601A (en) * 1994-11-18 1997-04-22 Milkway Networks Corporation Apparatus and method for providing a secure gateway for communication and data exchanges between networks
US5715403A (en) * 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
US5613012A (en) * 1994-11-28 1997-03-18 Smarttouch, Llc. Tokenless identification system for authorization of electronic transactions and electronic transmissions
US5627658A (en) * 1994-12-14 1997-05-06 Xerox Corporation Automatic networked facsimile queuing system
US5684990A (en) * 1995-01-11 1997-11-04 Puma Technology, Inc. Synchronization of disparate databases
US5729735A (en) * 1995-02-08 1998-03-17 Meyering; Samuel C. Remote database file synchronizer
CN1047048C (zh) * 1995-03-17 1999-12-01 伍思义 微机电子邮政网络终端
US5758354A (en) * 1995-04-28 1998-05-26 Intel Corporation Application independent e-mail synchronization
US5632011A (en) * 1995-05-22 1997-05-20 Sterling Commerce, Inc. Electronic mail management system for operation on a host computer system
US5682524A (en) * 1995-05-26 1997-10-28 Starfish Software, Inc. Databank system with methods for efficiently storing non-uniform data records
US5710918A (en) * 1995-06-07 1998-01-20 International Business Machines Corporation Method for distributed task fulfillment of web browser requests
US5680542A (en) * 1995-06-07 1997-10-21 Motorola, Inc. Method and apparatus for synchronizing data in a host memory with data in target MCU memory
US5721908A (en) * 1995-06-07 1998-02-24 International Business Machines Corporation Computer network for WWW server data access over internet
JP3453459B2 (ja) * 1995-06-19 2003-10-06 キヤノン株式会社 電子メールシステム及びその制御方法、並びに通信端末装置及びその制御方法
US5745360A (en) * 1995-08-14 1998-04-28 International Business Machines Corp. Dynamic hypertext link converter system and process
US5634053A (en) * 1995-08-29 1997-05-27 Hughes Aircraft Company Federated information management (FIM) system and method for providing data site filtering and translation for heterogeneous databases
US5647002A (en) * 1995-09-01 1997-07-08 Lucent Technologies Inc. Synchronization of mailboxes of different types
US5721914A (en) * 1995-09-14 1998-02-24 Mci Corporation System and method for hierarchical data distribution
US5757916A (en) * 1995-10-06 1998-05-26 International Series Research, Inc. Method and apparatus for authenticating the location of remote users of networked computing systems
US5758150A (en) * 1995-10-06 1998-05-26 Tele-Communications, Inc. System and method for database synchronization
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
US5713019A (en) * 1995-10-26 1998-01-27 Keaten; Timothy M. Iconic access to remote electronic monochrome raster data format document repository
US5832483A (en) * 1995-12-15 1998-11-03 Novell, Inc. Distributed control interface for managing the interoperability and concurrency of agents and resources in a real-time environment
US5765171A (en) * 1995-12-29 1998-06-09 Lucent Technologies Inc. Maintaining consistency of database replicas
US5706502A (en) * 1996-03-25 1998-01-06 Sun Microsystems, Inc. Internet-enabled portfolio manager system and method
US5758355A (en) * 1996-08-07 1998-05-26 Aurum Software, Inc. Synchronization of server database with client database using distribution tables
US5870759A (en) * 1996-10-09 1999-02-09 Oracle Corporation System for synchronizing data between computers using a before-image of data
US5790790A (en) * 1996-10-24 1998-08-04 Tumbleweed Software Corporation Electronic document delivery system in which notification of said electronic document is sent to a recipient thereof
US5790425A (en) * 1997-02-19 1998-08-04 Sun Microsystems, Inc. Generic server benchmarking framework in a client-server environment

Also Published As

Publication number Publication date
EP0996905B1 (de) 2006-05-24
DE69834640D1 (de) 2006-06-29
JP3532854B2 (ja) 2004-05-31
ES2256949T3 (es) 2006-07-16
EP1783675A3 (de) 2007-05-16
ES2315960T3 (es) 2009-04-01
EP1783675B1 (de) 2008-10-15
EP2249263A1 (de) 2010-11-10
EP1923828A1 (de) 2008-05-21
US5961590A (en) 1999-10-05
HK1028283A1 (en) 2001-02-09
DK0996905T3 (da) 2006-08-28
ES2316125T3 (es) 2009-04-01
ES2316123T3 (es) 2009-04-01
EP1667042A3 (de) 2006-07-26
CN1268233A (zh) 2000-09-27
CN100338606C (zh) 2007-09-19
ATE327547T1 (de) 2006-06-15
EP0996905A1 (de) 2000-05-03
ATE411571T1 (de) 2008-10-15
ATE411573T1 (de) 2008-10-15
JP2001511611A (ja) 2001-08-14
EP1785927B1 (de) 2008-10-15
EP1722321B1 (de) 2008-10-15
CA2296432A1 (en) 1999-02-04
EP1785927A1 (de) 2007-05-16
EP1667042A2 (de) 2006-06-07
DE69840137D1 (de) 2008-11-27
IL134138A (en) 2004-06-20
PT996905E (pt) 2006-07-31
DE69840138D1 (de) 2008-11-27
EP0996905A4 (de) 2001-01-31
IL134138A0 (en) 2001-04-30
WO1999005620A1 (en) 1999-02-04
ATE411572T1 (de) 2008-10-15
EP1783675A2 (de) 2007-05-09
DE69840139D1 (de) 2008-11-27
EP1722321A1 (de) 2006-11-15

Similar Documents

Publication Publication Date Title
DE69834640T2 (de) System und Verfahren zur Synchronisierung elektronischer Nachrichten über ein Netzwerk
DE69938077T2 (de) Verfahren, Vorrichtung und Programmspeichereinrichtung für einen Klienten und ein adaptiver Synchronisierungs- und Transformierungsserver
DE69935443T2 (de) Verfahren und Vorrichtung zum Schieben von Information von einem Wirtrechnersystem zu einem mobilen Datenkommunikationsgerät
DE60009309T2 (de) System und verfahren zum presentieren von kanalisierten daten
DE69635469T2 (de) Synchronisierung zwischen verschiedenen Computeranbieterumgebungen
DE60029774T2 (de) Videokonferenzsystem
DE60024706T2 (de) Verteiltes Parameterkontrollprotokoll
DE60038705T2 (de) Verfahren und vorrichtung für die aktivitäts-basierte zusammenarbeit eines rechnersystems, ausgestattet mit einem kommunikations-manager
DE69730056T2 (de) Routen von duplikaten
DE10064627B4 (de) Verfahren und System für die Verarbeitung von E-Mail-Nachrichten in einem Datenübertragungssystem
DE69735950T2 (de) Automatische diensteinstellung für computersystembenutzer
DE60213419T2 (de) Client-server-modell zur synchronisation von dateien
DE602005001315T2 (de) Automatische Integration von Inhalt aus mehreren Datenspeichern mittels eines Mobilkommunikationsgeräts
DE60130633T2 (de) Gesicherte Internet-Zwischenablage
DE60130543T2 (de) Gesichertes netzwerkbetriebsmittelzugriffssystem
DE60308462T2 (de) Verfahren zur Übertragung von Antworten zu abgekürzter elektronischer Post
EP1642229B1 (de) Vorrichtung und verfahren zum benutzerseitigen bearbeiten von elektronischen nachrichten mit datei-anlagen
DE10148357A1 (de) System und Verfahren zur gemeinsamen Nutzung digitaler Literaturwerke mit einem Schutz gegen illegale Kopien durch Kommunikationsnetze
DE112010003361T5 (de) Virtuelles privates Netz für soziale Netze
EP1605649A1 (de) Verfahren und Vorrichtung zum Verwalten von elektronischen Nachrichten
WO1998047268A1 (en) Message service
DE60029332T2 (de) Verfahren zum schieben von information zwischen einem wirtrechnersystem und einem mobilen datenkommunikationsgerät
DE60318847T2 (de) Echtzeit-Nachrichtenaustausch in kooperativen Netzwerkumgebungen
DE60002839T2 (de) Verfahren und vorrichtung zur datenverarbeitung durch einen proxy
EP1760647B1 (de) Verfahren und Anordnung zur Handhabung von Dateien mittels mobiler Endgeräte sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium

Legal Events

Date Code Title Description
8363 Opposition against the patent
8331 Complete revocation