-
HINTERGRUND
-
Partnervermittlungs-Dienste
oder Dienste zur persönlichen
Vorstellung suchen passende Partner unter Verwendung von demografischen
Profilen, Interviews, zugehörigen
Präferenzen,
usw. Solche Dienste unterstützen
die Kommunikation zwischen möglichen übereinstimmenden
Partnern vor und nach einer ersten Vorstellung, zum Beispiel unter Verwendung
von E-Mail, Sofortnachrichten, Telefon, usw. Diese Dienste können die
Kommunikation innerhalb der Benutzerschnittstelle des Partnervermittlungs-Dienstes
oder eine zur Benutzerschnittstelle des Partnervermittlungs-Dienstes externe
Kommunikation umfassen. An diesen Diensten kann man leicht teilnehmen,
und sie reichen von kostenlosen Diensten bis zu hoch spezialisierten
und kostspieligen Diensten. Herkömmliche
Modelle der Online-Vorstellung umfassen die Registrierung neuer
Benutzer nach einer Zeitspanne, in der der Benutzer einige Aspekte
des Systems nutzen kann, um sein Interesse an einem solchen System
festzustellen. Die Benutzer können
sich dann registrieren, um einen vollständigen Zugang zum System zu
haben, der einen Kontakt mit potentiell passenden Partnern, sowie die
Verbreitung von Benutzerprofilen und Fotos in das System ermöglicht.
-
KURZBESCHREIBUG DER ZEICHNUNGEN
-
Die
oben angegebenen und weitere Eigenschaften der vorliegenden Offenlegung
werden aus der folgenden Beschreibung und den beigefügten Ansprüchen in
Verbindung mit den begleitenden Zeichnungen offensichtlicher. Unter
der Voraussetzung, dass diese Zeichnungen nur einige Ausführungen
gemäß der Offenlegung
zeigen und daher nicht als Einschränkung ihres Umfangs betrachtet
werden dürfen,
wird die Offenlegung mit zusätzlicher
Genauigkeit und zusätzlichem
Detail unter Verwendung der begleitenden Zeichnungen beschrieben.
-
1 zeigt
ein Blockdiagramm eines Geo-Positions-Kontakt-Dienst-Systems gemäß einer beispielhaften
Ausführung.
-
2 zeigt
ein Blockdiagramm einer Benutzer-Rechner-Vorrichtung
des Geo-Positions-Kontakt-Dienst-Systems aus 1 gemäß einer
beispielhaften Ausführung.
-
3 zeigt
ein Blockdiagramm eines Middleware-Systems des Geo-Positions-Kontakt-Dienst-Systems
aus 1 gemäß einer
beispielhaften Ausführung.
-
4 zeigt
ein Blockdiagramm eines Cloud-Computing-Systems des Geo-Positions-Kontakt-Dienst-Systems
aus 1 gemäß einer
beispielhaften Ausführung.
-
5 zeigt
ein Flussdiagramm, das die von dem Cloud-Computing-System aus 4 durchgeführten Operationen
gemäß einer
beispielhaften Ausführung
veranschaulicht.
-
6 zeigt
ein Flussdiagramm, das die von der Benutzer-Rechner-Vorrichtung
aus 2 durchgeführten
Operationen gemäß einer
beispielhaften Ausführung
veranschaulicht.
-
7 zeigt
ein Flussdiagramm, das die von dem Middleware-System aus 3 durchgeführten Operationen
gemäß einer
beispielhaften Ausführung veranschaulicht.
-
DETAILLIERTE BESCHREIBUNG
-
In
der folgenden detaillierten Beschreibung wird auf die begleitenden
Zeichnungen Bezug genommen, die einen Teil hiervon bilden. In den
Zeichnungen kennzeichnen gleiche Symbole typischerweise gleiche
Komponenten, es sei denn, der Kontext schreibt etwas anderes vor.
Die in der detaillierten Beschreibung beschriebenen beispielhaften
Ausführungen,
Zeichnungen und Ansprüche
sind nicht als Einschränkung gedacht.
Es können
andere Ausführungen
benutzt werden und weitere Änderungen
vorgenommen werden, ohne von dem Geist oder Umfang des hier vorgestellten
Gegenstandes der Erfindung abzuweichen. Es versteht sich von selbst,
dass die Aspekte der vorliegenden Offenlegung, wie hier allgemein
beschrieben und in den Figuren gezeigt, in einer Vielzahl von verschiedenen
Konfigurationen angeordnet, ausgetauscht, kombiniert und konstruiert
werden können,
von denen alle explizit betrachtet werden und einen Teil dieser
Offenlegung bilden.
-
Beispielhafte
Systeme, Verfahren, Vorrichtungen, usw. werden für Geo-Positions-Kontakt-Dienst-Systeme
beschrieben, bei denen vom Benutzer bereitgestellte Informationen
und Informationen über
den aktuellen Standort des Benutzers für eine Vielzahl von Benutzern
verwendet werden. Mit Bezug auf 1 wird ein
Blockdiagramm eines Geo-Positions-Kontakt-Dienst-Systems 100 gemäß einer
beispielhaften Ausführung
gezeigt. Das Geo-Positions-Kontakt-Dienst-System 100 kann
ein oder mehrere Benutzer-Rechner-Vorrichtungen 102a, 102b,
..., 102n, ein Middleware-System 104 und ein Cloud-Computing-System 106 enthalten.
Die eine oder mehreren Benutzer-Rechner-Vorrichtungen 102a, 102b,
..., 102n können
ein Computer eines beliebigen Formfaktors sein, einschließlich eines Laptops,
eines Desktops, eines Servers, einer integrierten Nachrichtenübermittlungsvorrichtung,
eines Personal Digital Assistant, eines Mobiltelefons, eines iPodTM, usw. Die eine oder die mehreren Benutzer-Rechner-Vorrichtungen 102a, 102b, 102n können demselben
und/oder verschiedenen Benutzern zugeordnet sein. Die mit der einen
oder den mehreren Benutzer-Rechner-Vorrichtungen 102a, 102b,
..., 102n verbundenen Vorrichtungen, das Middleware-System 104 und
das Cloud-Computing-System 106 können unter
Verwendung eines Netzwerks 108 miteinander kommunizieren.
Das Netzwerk 108 kann ein oder mehrere Arten von Netzwerk
umfassen, einschließlich
eines zellularen Netzwerks, eines Peer-to-Peer-Netzwerks, des Internet,
eines lokalen Netzes, eines Weitverkehrsnetzes, eines Wi-Fi-Netzwerks,
eines BluetoothTM-Netzwerks, usw.
-
Das
Cloud-Computing-System 106 kann ein oder mehrere Server 110 und
ein oder mehrere Datenbanken 114 enthalten. Ein Cloud-Computing-System
bezeichnet ein oder mehrere Rechner-Ressourcen, auf die über ein Netzwerk zugegriffen
werden kann, um Benutzern auf Anforderung Berechnungs-Dienste bereitzustellen.
Der eine oder die mehreren Server 110 können ein oder mehrere Rechner-Vorrichtungen 112a, 112b,
..., 112n umfassen, die Computer eines beliebigen Formfaktors
sein können.
Die eine oder mehreren Datenbanken 114 können eine
erste Datenbank 114a, ... und eine n-te Datenbank 114n umfassen.
Die eine oder mehreren Datenbanken 114 können in
einem oder mehreren der ein oder mehreren Server 110 untergebracht sein,
oder können
in getrennten Rechner-Vorrichtungen untergebracht sein, auf die
der eine oder die mehreren Server 110 direkt über eine
drahtgebundene oder drahtlose Verbindung oder über das Netzwerk 108 zugreifen
kann. Die eine oder mehreren Datenbanken 114 können in
Ebenen organisiert sein und können
unter Verwendung einer Vielzahl von Datenbank-Technologien ohne
Einschränkung
entwickelt werden. Die Komponenten des Cloud-Computing-Systems 106 können in
einer einzigen Rechner-Vorrichtung
oder in einer Vielzahl von Rechner-Vorrichtungen an einem einzigen
Standort, in einer einzigen Einrichtung implementiert werden und/oder
können
voneinander entfernt sein.
-
Mit
Bezug auf 2 wird ein Blockdiagramm einer
Benutzer-Rechner-Vorrichtung 102 des Geo-Positions-Kontakt-Dienst-Systems 100 gemäß einer
beispielhaften Ausführung
gezeigt. Die Benutzer-Rechner-Vorrichtung 102 kann eine
Eingabe-Schnittstelle 200, eine Ausgabe-Schnittstelle 202, eine
Kommunikations-Schnittstelle 204, ein computerlesbares
Medium 206, einen Prozessor 208 und eine Geo-Positions-Kontakt-Dienst-Anwendung 210 enthalten.
Andere und zusätzliche
Komponenten können
ohne Einschränkung
in die Benutzer-Rechner- Vorrichtung 102 eingegliedert
werden. Die Geo-Positions-Kontakt-Dienst-Anwendung 210 bietet
eine grafische Benutzerschnittstelle mit vom Benutzer wählbarer
und steuerbarer Funktionalität.
Die Geo-Positions-Kontakt-Dienst-Anwendung 210 kann eine
Browser-Anwendung oder eine andere auf einer Benutzerschnittstelle
basierende Anwendung enthalten, die mit dem Middleware-System 104 interagiert, um
eine geografische Position eines Benutzers zu überwachen und den Benutzer
zu benachrichtigen, wenn ein oder mehrere Benutzer sich in der Nähe des Benutzers
befinden, um ein Treffen zu arrangieren.
-
Die
Eingabe-Schnittstelle 200 bietet eine Schnittstelle zum
Empfang von Informationen vom Benutzer zur Eingabe in die Benutzer-Rechner-Vorrichtung 102,
wie einem Fachmann bekannt ist. Die Eingabe-Schnittstelle 200 kann
eine Schnittstelle zu verschiedenen Eingabe-Technologien bieten,
wie z. B. aber nicht beschränkt
auf eine Tastatur, einen Pen- und
Touch-Screen, eine Maus, einen Trackball, einen Touch-Screen, ein Tastenfeld,
ein oder mehrere Tasten, usw., um es dem Benutzer zu ermöglichen,
Informationen in die Benutzer-Rechner-Vorrichtung 102 einzugeben
oder Auswahlen zu treffen, die in einer Benutzerschnittstelle unter
Verwendung eines Bildschirms unter Kontrolle der Geo-Positions-Kontakt-Dienst-Anwendung 210 angezeigt
werden. Die Eingabe-Schnittstelle 104 kann sowohl eine
Eingabe-, als auch eine Ausgabe-Schnittstelle bereitstellen. Zum
Beispiel erlaubt ein Touch-Screen sowohl eine Benutzer-Eingabe und
präsentiert
dem Benutzer auch eine Ausgabe. Die Benutzer-Rechner-Vorrichtung 102 kann
eine oder mehrere Eingabe-Schnittstellen haben, welche dieselbe
oder unterschiedliche Schnittstellen-Technologien benutzen.
-
Die
Ausgabe-Schnittstelle 202 bietet eine Schnittstelle zur
Ausgabe von Informationen zur Durchsicht durch einen Benutzer der
Benutzer-Rechner-Vorrichtung 102. Zum Beispiel kann die
Ausgabe-Schnittstelle 202 eine Schnittstelle zu einem Bildschirm,
einem Drucker, einem Lautsprecher, usw. umfassen. Der Bildschirm
kann ein beliebiger aus einer Vielzahl von Bildschirmen sein, einschließlich aber
nicht beschränkt
auf einen Dünnfilmtransistor-Bildschirm,
einen Leuchtdioden-Bildschirm, einen Flüssigkristall-Bildschirm, usw.
Der Drucker kann ein beliebiger aus einer Vielzahl von Druckern
sein, einschließlich
aber nicht beschränkt
auf einen Tintenstrahldrucker, einen Laserdrucker, usw. Die Benutzer-Rechner-Vorrichtung 102 kann
eine oder mehrere Ausgabe-Schnittstellen
haben, bei denen dieselbe oder eine unterschiedliche Schnittstellen-Technologie
benutzt wird.
-
Die
Kommunikations-Schnittstelle 204 bietet eine Schnittstelle
zum Empfang und zum Senden von Daten zwischen Vorrichtungen, wobei
verschiedene Protokolle, Übertragungstechnologien
und Medien verwendet werden. Die Kommunikations-Schnittstelle kann
die Kommunikation unter Verwendung verschiedener Übertragungsmedien
unterstützen,
die drahtgebunden oder drahtlos sein können. Die Benutzer-Rechner-Vorrichtung 102 kann
eine oder mehrere Kommunikations-Schnittstellen
haben, die dasselbe oder unterschiedliche Protokolle, Übertragungstechnologien
und Medien benutzen.
-
Das
computerlesbare Medium 206 ist ein elektronischer Lagerplatz
oder Speicher für
Informationen, so dass der Prozessor 208 auf die Informationen
zugreifen kann. Das computerlesbare Medium 206 kann jeden
Typ von Arbeitsspeicher (RAM), jeden Typ von Festwertspeicher (ROM),
jeden Typ Flash-Speicher,
usw., sowie magnetische Speichervorrichtungen (z. B. Festplatten,
Disketten, Magnetstreifen, ...), optische Platten (z. B. Compact
Disk (CD), Digital Versatile Disk (DVD), ...), Smart Cards, Flash-Speicher-Einrichtungen,
usw. umfassen, ist aber nicht darauf beschränkt. Die Benutzer-Rechner-Vorrichtung 102 kann
ein oder mehrere computerlesbare Medien haben, die dieselbe oder
eine andere Speichermedien-Technologie benutzen. Die Benutzer-Rechner-Vorrichtung 102 kann
auch ein oder mehrere Laufwerke haben, die das Laden von Speichermedien unterstützen, wie
z. B. eine CD, eine DVD, eine Flash-Speicherkarte, usw.
-
Der
Prozessor 208 führt
Instruktionen aus, wie einem Fachmann bekannt. Die Instruktionen
können
durch einen Spezial-Computer, Logik-Schaltkreise oder Hardware-Schaltkreise ausgeführt werden. Somit
kann der Prozessor 208 als Hardware, Firmware, Software
oder eine beliebige Kombination dieser Verfahren implementiert werden.
Der Begriff ”Ausführung” bezeichnet
den Prozess des Ablaufs eines Anwendungsprogramms oder die Ausführung einer
Operation, die durch eine Instruktion aufgerufen wird. Die Instruktionen
können
unter Verwendung einer oder mehrerer Programmiersprachen, einer Script-Sprache,
Assembler-Sprache, usw. geschrieben werden. Der Prozessor 208 führt eine
Instruktion aus, was bedeutet, dass er die Operationen ausführt, die
von der Instruktion aufgerufen werden. Der Prozessor 208 ist
betriebsfähig
mit der Eingabe-Schnittstelle 200, mit der Ausgabe-Schnittstelle 202,
mit der Kommunikations-Schnittstelle 204, mit dem computerlesbaren
Medium 206 und mit der Geo-Positions-Kontakt-Dienst-Anwendung 210 gekoppelt,
um Informationen zu empfangen, zu senden und zu verarbeiten. Der
Prozessor 208 kann einen Satz von Instruktionen aus einer
Festwertspeicher-Vorrichtung abrufen und die Instruktionen in einer
ausführbaren Form
in eine Vorrichtung zum temporären
Speichern kopieren, die im Allgemeinen eine Form eines RAM-Speichers
ist. Die Benutzer-Rechner-Vorrichtung 102 kann
eine Vielzahl von Prozessoren enthalten, bei denen dieselbe oder
eine unterschiedliche Verarbeitungstechnologie benutzt wird.
-
Mit
Bezug auf 3 wird ein Blockdiagramm des
Middleware-Systems 104 des Geo-Positions-Kontakt-Dienst-Systems 100 gemäß einer
beispielhaften Ausführung
gezeigt. Das Middleware-System 104 kann eine Eingabe-Schnittstelle 300, eine
Ausgabe-Schnittstelle 302, eine Kommunikations-Schnittstelle 304,
ein computerlesbares Medium 306, einen Prozessor 308 und
eine Positionsbestimmungs-Architektur 310 umfassen. Andere
und zusätzliche
Komponenten können
ohne Einschränkung in
das Middleware-System 104 eingegliedert werden. Zum Beispiel
kann das Middleware-System 104 eine Datenbank enthalten,
auf die das Middleware-System 104 direkt zugreifen kann,
oder auf die das Middleware-System 104 unter Benutzung
eines Netzwerks, wie z. B. des Netzwerks 108 zugreifen
kann. Das Middleware-System 104 kann ferner einen Cache
zur temporären
Speicherung von Informationen, die zum Middleware-System 104 gesendet
werden, enthalten. Die Eingabe-Schnittstelle 300 liefert
eine ähnliche
Funktionalität
wie die Eingabe-Schnittstelle 200. Die Ausgabe-Schnittstelle 302 liefert
eine ähnliche
Funktionalität
wie die Ausgabe-Schnittstelle 202. Die
Kommunikations-Schnittstelle 304 liefert eine ähnliche
Funktionalität
wie die Kommunikations-Schnittstelle 204.
Das computerlesbare Medium 306 liefert eine ähnliche
Funktionalität
wie das computerlesbare Medium 206. Der Prozessor 308 liefert eine ähnliche
Funktionalität
wie der Prozessor 208.
-
Die
Geo-Positions-Kontakt-Dienst-System-Architektur 310 kann
eine Geo-Positions-Kontakt-Dienst-Steuerungs-Anwendung 312, eine Anwendungs-Engine 314,
Geschäfts-Komponenten 316 und
eine Hardware-Abstraktions-Schicht 318 enthalten. Die Geo-Positions-Kontakt-Dienst-Steuerungs-Anwendung 312 enthält die Operationen,
die mit der Schnittstelle zwischen dem Cloud-Computing-System 106 und
der Benutzer-Rechner-Vorrichtung 102 verbunden sind, um
Benutzer-Positions-Informationen
zu unterhalten und zu organisieren und eine Anforderung nach einem
Geo-Positions-Kontakt zu verarbeiten. Die Geo-Positions-Kontakt-Dienst-Steuerungs-Anwendung 312 enthält die Funktionalität, die Registrierung,
das Anmelden, die Profil-Eingabe, die Profil-Verwaltung, die Darstellung von Übereinstimmungen,
die Kommunikation mit passenden Partnern, die Positionsbestimmung
von passenden Partnern, die Anbahnung, die Rückmeldung, Aktivitäts-Listen, die
Favoriten-Liste, die Liste von Treffpunkten, eine Funktion zum ”Jetzt-Sofort”-Treffen
zur sofortigen Positionsbestimmung und zur Überprüfung der Bereitschaft passender
Partner, Multimedia-Anzeigen von Positionen, passenden Partnern
und Empfehlungen, usw. zu unterstützen.
-
Die
Geo-Positions-Kontakt-Dienst-Systemarchitektur 310 kann
Lastausgleichs-Server, Inhalts-Server, Datenbank-Server, Anwendungs-Server und Registrierungs-Server
benutzen. Die Anwendungs- und Registrierungs-Server erleichtern
den Registrierungs-Prozess für
einen Benutzer, sowie das Herunterladen der Geo-Positions-Kontakt-Dienst-Anwendung 210 und
Aktualisierungen der Anwendung. Das Middleware-System 104 ist konfiguriert,
die korrekte Software-Anwendung für die eine oder die mehreren
Benutzer-Rechner-Vorrichtungen 102a, 102b, ..., 102n auf
der Basis der vom Benutzer empfangenen Registrierungs-Information
herunter zu laden. Während
des Registrierungs-Prozesses kann der Benutzer bestimmte Felder
ausfüllen,
die bei der Erkennung der Kontakte des Benutzers helfen. Benutzerbezogene
Daten werden von der einen oder den mehreren Benutzer-Rechner-Vorrichtungen 102a, 102b,
..., 102n empfangen und unter Verwendung des Anwendungs-
und des Datenbank-Servers formatiert. Die Lastausgleichs-Server
sortieren Benutzeranfragen. Das Middleware-System 104 sendet
Benutzer-Positions-Datenpunkte an das Cloud-Computing-System 106.
-
Mit
Bezug auf 4 wird gemäß einer beispielhaften Ausführung ein
Blockdiagramm von Modulen gezeigt, die zu dem Cloud-Computing-System 106 des
Geo-Positions-Kontakt-Dienst-Systems 100 gehören. Das
Cloud-Computing-System 106 kann ein Schnittstellenmodul 400,
einen Dienst-Katalog 402, ein Bereitstellungs-Werkzeug 404,
ein Überwachungs-
und Mess-Modul 406, ein System-Management-Modul 408 und
den einen oder mehrere Server 110 enthalten. Andere und
zusätzliche
Komponenten können
ohne Einschränkung
in das Cloud-Computing-System 106 eingegliedert
werden. Zum Beispiel kann das Cloud- Computing-System 106 ferner
die eine oder mehreren Datenbanken 114 enthalten. Das Middleware-System 104 interagiert
mit dem Schnittstellenmodul 400, um Dienste anzufordern.
Der Dienst-Katalog 402 liefert
eine Liste von Diensten, die das Middelware-System 104 anfordern
kann. Das Bereitstellungs-Werkzeug 404 weist
Rechner-Ressourcen des einen oder der mehreren Server 110 zu, um
den angeforderten Dienst zu liefern und kann die benötigten Bilder
zur Ausführung
auf dem einen oder den mehreren Servern 110 benutzen. Das Überwachungs-
und Mess-Modul 406 verfolgt die Benutzung des einen oder
der mehreren Server 110, so dass die Ressourcen einem bestimmten
Benutzer zugeschrieben werden können,
möglicherweise
für Zwecke
der Rechnungserstellung. Das System-Management-Modul 408 verwaltet
den einen oder die mehreren Server 110. Der eine oder die
mehreren Server 110 können
wie in einem Netz miteinander verbunden werden und parallel laufen.
-
Das
Schnittstellenmodul 400 kann konfiguriert sein, dass die
Auswahl eines Dienstes aus dem Dienstkatalog 402 möglich ist.
Eine zu einem ausgewählten
Dienst gehörende
Anforderung kann zum System-Management-Modul 408 gesendet
werden. Das System-Management-Modul 408 erkennt verfügbare Ressource(n),
wie z. B. ein oder mehrere Server 110 und/oder ein oder
mehrere Datenbanken 114. Das System-Management-Modul 408 ruft
das Bereitstellungs-Werkzeug 404 auf, um die erkannte(n)
Ressource(n) zuzuordnen. Das Bereitstellungs-Werkzeug 404 kann auch einen
angeforderten Stack oder eine Web-Anwendung benutzen.
-
Mit
Bezug auf 5 werden beispielhafte Operationen
beschrieben, die vom Cloud-Computing-System 106 ausgeführt werden.
Abhängig
von der Ausführung
können
zusätzliche,
weniger oder andere Operationen ausgeführt werden. Die Reihenfolge
der Darstellung der Operationen in 5 ist nicht
als Einschränkung
beabsichtigt. In einer Operation 500 werden ein oder mehrere
Geo-Positions-Kontakt-Dienst-Anwendungen
empfangen Die eine oder die mehreren Geo- Positions-Kontakt-Dienst-Anwendungen
können
ein Textformat, ein Objektcode-Format oder ein ausführbares
Format haben. Die empfangenen ein oder mehreren Geo-Positions-Kontakt-Dienst-Anwendungen werden
in einer Operation 502 im Cloud-Computing-System 106 gespeichert.
In einer Operation 504 werden Benutzerprofil-Informationen
empfangen. Zum Beispiel können
die Benutzerprofil-Informationen die Adresse des Wohnortes und des
Arbeitsplatzes, Alter, Geschlecht, Rasse, sexuelle Orientierung,
Einkommen, Unterhaltungs- und Medien-Präferenzen, Urlaubs-Vorlieben,
Restaurant-Vorlieben, Sport-Vorlieben,
soziales Verhalten, politische Mitgliedschaften, Hobbys, Vorlieben
und Abneigungen, Persönlichkeitsprofil,
usw. enthalten. In einer Operation 506 wird die Benutzerprofil-Information im Cloud-Computing-System 106 gespeichert.
In einer Operation 508 werden Informationen über den
Standort des Benutzers empfangen. In einer Operation 510 werden
die Informationen über
den Standort des Benutzers im Cloud-Computing-System 106 gespeichert.
Die Operationen 504–510 werden
für eine
Vielzahl von Benutzern wiederholt.
-
In
einer Operation 512 werden Kontakte aus der Benutzerinformation
erkannt. Zum Beispiel kann der Benutzer eine Kontaktliste anderer
Benutzer des Geo-Positions-Kontakt-Dienst-Systems 100 liefern. Als
weiteres Beispiel kann eine Partnervermittlungs-Dienst-Anwendung
mögliche
passende Partner aus den anderen Benutzern des Geo-Positions-Kontakt-Dienst-Systems 100 erkennen,
um die Kontakte zu bestimmen. In einer Operation 514 werden
der aktuelle geografische Standort der erkannten Kontakte und des
Benutzers bestimmt, und eine Entfernung zwischen dem Benutzer und
den erkannten Kontakten wird festgestellt. Wenn keiner der Kontakte
sich innerhalb einer Benachrichtigungs-Entfernung befindet, fährt die
Verarbeitung bei der Operation 512 fort, um die Kontakte
zu aktualisieren und mit der Überwachung
der Entfernungen zwischen den erkannten Kontakten und dem Benutzer
fortzufahren. Die Benachrichtigungs-Entfernung kann vom Benutzer
nach seinem Belieben definiert werden. Das Geo-Positions-Kontakt-Dienst-System 100 kann auch
einen voreingestellten Wert haben. Der voreingestellte Wert kann
mit einer Zeitdauer für
das Zurücklegen
der Benachrichtigungs-Entfernung
auf der Grundlage der verfügbaren
Transportverfahren verbunden sein.
-
Wenn
einer der Kontakte sich innerhalb der Benachrichtigungs-Entfernung
befindet, fährt
die Verarbeitung mit der Operation 518 fort, um eine Benachrichtigungs-Meldung
zu erzeugen. Die Benachrichtigungs-Meldung kann eine Kennung des
Kontaktes oder der Kontakte innerhalb der Benachrichtigungs-Entfernung
enthalten. Die Benachrichtigungs-Meldung
kann auch eine Anzeige des aktuellen geografischen Standortes des
Kontaktes oder der Kontakte innerhalb der Benachrichtigungs-Entfernung
enthalten. In einer Operation 520 wird die erzeugte Benachrichtigungs-Meldung
zum Middleware-System 104 gesendet.
Wenn in Operation 522 keine Anforderung empfangen wird,
fährt die
Verarbeitung mit Operation 512 fort, um die Kontakte kontinuierlich
zu aktualisieren und mit der Überwachung
der Entfernung zwischen den Kontakten und dem Benutzer fortzufahren.
Wenn in Operation 522 eine Anforderung empfangen wird,
fährt die
Verarbeitung mit Operation 524 fort. In der Operation 524 werden
die Standorte des Benutzers und der/des als innerhalb der Benachrichtigungs-Entfernung
liegenden erkannten Kontakte(s) überwacht,
indem Positions-Aktualisierungen
an das Middleware-System 104 gesendet werden, bis sich
der Benutzer und der/die erkannten Kontakt(e) treffen.
-
Mit
Bezug auf 6 werden beispielhafte Operationen
beschrieben, die von der Benutzer-Rechner-Vorrichtung 102 ausgeführt werden.
Abhängig
von der Ausführung
können
zusätzliche,
weniger oder andere Operationen ausgeführt werden. Die Reihenfolge
der Darstellung der Operationen in 6 ist nicht
als Einschränkung
beabsichtigt. In einer Operation 600 wird eine erste Anforderung
für einen
Benutzer, Informationen einzugeben, empfangen. Zum Beispiel kann
der Benutzer mit einer Browser-Anwendung auf eine Website zugreifen,
was dazu führt,
dass die erste Anforderung an der Benutzer-Rechner-Vorrichtung 102 empfangen
wird. In einer Operation 602 wird die Anforderung nach
Information dem Benutzer angezeigt. Zum Beispiel kann dem Benutzer
eine Reihe von Fragen präsentiert werden,
um die Präferenzen,
das Verhalten, die Vorlieben, Abneigungen, Kontakte, usw. des Benutzers zu
ermitteln. In einer Operation 604 wird die Benutzerinformation
empfangen. In einer Operation 606 wird die empfangene Benutzerinformation
zum Middleware-System 104 gesendet. In einer Operation 608 wird die
Geo-Positions-Kontakt-Dienst-Anwendung 210 empfangen
und, falls erforderlich, in einer oder mehreren der Benutzer-Rechner-Vorrichtungen installiert. Nachdem
sie empfangen und, falls erforderlich, installiert wurde, wird die
Geo-Positions-Kontakt-Dienst-Anwendung 210 von
der einen oder den mehreren Benutzer-Rechner-Vorrichtungen ausgeführt.
-
In
einer Operation 610 wird eine geografische Position der
Benutzer-Rechner-Vorrichtung 102 empfangen. Zum Beispiel
kann die Benutzer-Rechner-Vorrichtung 102 ein globales
Positionsbestimmungs-System enthalten, das die geografische Position
der Benutzer-Rechner-Vorrichtung 102 bestimmt und die geografische
Position zur Geo-Positions-Kontakt-Dienst-Anwendung 210 sendet.
Die geografische Position der Benutzer-Rechner-Vorrichtung 102 kann
auch darauf, dass ein Benutzer seine Position ausdrücklich definiert,
auf Funkfrequenz-Identifizierung anderer Transponder-Positionsbestimmungs-Systeme
oder auf einer IP-Adressenumsetzung
basieren. In einer Operation 612 wird die geografische
Position der Benutzer-Rechner-Vorrichtung 102 zum Middleware-System 104 gesendet. Die
Information kann unter Kontrolle des Benutzers und/oder automatisch
gesendet werden. In einer Operation 614 wird eine Benachrichtigung
und Anforderung vom Middleware-System 104 empfangen. Die Benachrichtigung
enthält
eine Kennung eines oder mehrerer Benutzer, die sich innerhalb der
Benachrichtigungs-Entfernung zum aktuellen Standort des Benutzers
befinden. Die Benachrichtigung kann die Position der Benutzer auf
einer Karte anzeigen, die Adresse bereitstellen, usw. Die Anforderung
enthält
die Aufforderung anzugeben, ob der Benutzer den einen oder die mehreren
Benutzer der ein oder mehreren erkannten Benutzer treffen möchte. Die Anforderung
kann auch Vorschläge
für Treffpunkte umfassen,
die auf der geografischen Position des Benutzers und dem einen oder
den mehreren Benutzern und/oder auf der Benutzerprofil-Information
des Benutzers basieren können.
Alternativ kann der Benutzer einen Treffpunkt angeben. Wenn der
Benutzer die Anforderung in einer Operation 616 nicht akzeptiert,
fährt die
Verarbeitung mit der Operation 614 fort. Wenn der Benutzer
die Anforderung in Operation 616 akzeptiert fährt die
Verarbeitung mit der Operation 618 fort. In der Operation 618 wird
eine Akzeptanz-Nachricht
zum Middleware-System 104 gesendet, in der die anderen
Benutzer gekennzeichnet werden, die der Benutzer treffen möchte. In
einer Operation 620 wird eine Bestätigungs-Nachricht empfangen, die bestätigt, ob
einer von den erkannten Benutzern ebenfalls die Anforderung akzeptiert
hat.
-
Wenn
der Benutzer in einer Operation 622 keine Positions-Aktualisierungen
anfordert, fährt
die Verarbeitung mit der Operation 614 fort. Wenn der Benutzer
in der Operation 622 Positions-Aktualisierungen anfordert,
fährt die
Verarbeitung mit der Operation 624 fort. In der Operation 624 wird
eine Anforderung zur Aktualisierung von Positionen zum Middleware-System 104 gesendet.
In einer Operation 626 werden die Positions-Aktualisierungen
vom Middleware-System 104 empfangen, bis sich die Benutzer treffen.
Zum Beispiel können
die Standorte der Benutzer auf einer Karte angezeigt werden, um
ihre relativen Positionen anzuzeigen, und man kann eine geschätzte Ankunftszeit
für jeden
Benutzer anzeigen.
-
Mit
Bezug auf 7 werden beispielhafte Operationen
beschrieben, die von dem Middleware-System 104 ausgeführt werden.
Abhängig
von der Ausführung
können
zusätzliche,
weniger oder andere Operationen ausgeführt werden. Die Reihenfolge der
Darstellung der Operationen in 7 ist nicht
als Einschränkung
beabsichtigt. Das Middleware-System 104 definiert die Parameter
zur Rückgabe
lesbarer Daten zur Benutzer-Rechner-Vorrichtung 102 unter
Verwendung von Anwendungs-Programmierungs-Schnittstellen, zum Beispiel
in Verbindung mit der Betriebssystem-Kompatibilität, den Fähigkeiten des
Bildschirms, den Eigenschaften des Media-Players, usw. In einer Operation 700 werden
die eine oder die mehreren Geo-Positions-Kontakt-Dienst-Anwendungen
zum Cloud-Computing-System 106 gesendet.
In einer Operation 701 wird eine Anforderung nach Informationen
zur Benutzer-Rechner-Vorrichtung 102 gesendet.
In einer Operation 702 wird die Benutzer-Information von
der Benutzer-Rechner-Vorrichtung 102 empfangen. In einer
Operation 704 werden die empfangenen Benutzer-Informationen
zum Cloud-Computing-System 106 gesendet. In einer Operation 706 wird
die Geo-Positions-Kontakt-Dienst-Anwendung 210 zur
Benutzer-Rechner-Vorrichtung 102 gesendet.
-
In
einer Operation 708 wird die Benutzer-Positions-Information von der
Benutzer-Rechner-Vorrichtung 102 empfangen. In einer Operation 710 wird die
empfangene Positions-Information zum Cloud-Computing-System 106 gesendet.
Wenn in einer Operation 712 keine Benachrichtigung empfangen
wird, fährt
die Verarbeitung mit der Operation 712 fort, um eine kontinuierliche Überwachung
auf eine Benachrichtigung vom Cloud-Computing-System 106 durchzuführen. Wenn
in der Operation 712 eine Benachrichtigung empfangen wird,
fährt die
Verarbeitung mit der Operation 714 fort. In der Operation 714 wird
die empfangene Benachrichtigung mit einer Anfrage, zu bestätigen, ob
ein Treffen vom Benutzer gewünscht
wird, zur Benutzer-Rechner-Vorrichtung 102 gesendet. Wenn
in der Operation 716 keine Annahme empfangen wird, fährt die
Verarbeitung mit der Operation 712 fort, um eine kontinuierliche Überwachung
auf eine Benachrichtigung vom Cloud-Computing-System 106 durchzuführen. Wenn in
der Operation 716 eine Annahme empfangen wird, fährt die
Verarbeitung mit der Operation 718 fort. In der Operation 718 wird
ein Treffen abgestimmt, indem die Annahme und eine Anforderung für ein Treffen
an den einen oder die mehreren anderen Benutzer, für die der
Benutzer einen Wunsch sie zu treffen angezeigt hat, gesendet werden.
Wenn einer der ein oder mehreren anderen Benutzer in einer Operation 720 die
Anforderung auch annimmt, wird eine Bestätigung zur Benutzer-Rechner-Vorrichtung 102 gesendet.
-
Wenn
in einer Operation 722 keine Anforderung zur Überwachung
empfangen wird, fährt
die Verarbeitung mit der Operation 712 fort, um eine kontinuierliche Überwachung
auf eine Benachrichtigung vom Cloud-Computing-System 106 durchzuführen. Wenn
in der Operation 722 eine Anforderung zur Überwachung
empfangen wird, fährt
die Verarbeitung mit der Operation 724 fort. In der Operation 724 wird
eine Anforderung zur Überwachung
der Position der Teilnehmer an dem Treffen an das Cloud-Computing-System 106 gesendet.
In einer Operation 726 werden Positions-Aktualisierungen
für die
Teilnehmer an dem Treffen vom Cloud-Computing-System 106 empfangen.
In einer Operation 728 werden die empfangenen Positions-Aktualisierungen
für die
Teilnehmer an dem Treffen zur Benutzer-Rechner-Vorrichtung 102 gesendet,
bis sich die Teilnehmer an dem Treffen treffen. Die Verarbeitung
fährt mit
der Operation 712 fort, um eine kontinuierliche Überwachung
auf eine Benachrichtigung vom Cloud-Computing-System 106 durchzuführen.
-
Es
bleibt nur ein kleiner Unterschied zwischen Hardware- und Software-Implementationen von
Aspekten der Systeme. Die Verwendung von Hardware oder Software
ist im Allgemeinen (aber nicht immer, dahingehend, dass in bestimmten Zusammenhängen die
Auswahl zwischen Hardware und Software ein entscheidender Punkt
werden kann) eine Design-Entscheidung, in der die Kompromisse zwischen
Kosten und Effizienz abgebildet sind. Es gibt verschiedene Mittel,
mit denen Prozesse und/oder Systeme und/oder andere hier beschriebene
Technologien ausgeführt
werden können
(z. B. Hardware, Software und/oder Firmware), und das bevorzugte
Mittel ändert
sich mit dem Kontext, in dem die Prozesse und/oder Systeme und/oder
anderen Technologien eingesetzt werden. Zum Beispiel kann, wenn
ein Anwender feststellt, dass Geschwindigkeit und Genauigkeit vorrangig
sind, der Anwender sich für
eine Realisierung aus im Wesentlichen Hardware und/oder Firmware
entscheiden, wenn Flexibilität
vorrangig ist, kann sich der Anwender für eine hauptsächlich aus
Software bestehende Implementation entscheiden, oder wieder als
Alternative kann sich der Anwender für eine Kombination aus Hardware,
Software und/oder Firmware entscheiden.
-
In
der oben angegebenen detaillierten Beschreibung wurden verschiedene
Ausführungen
der Vorrichtungen und/oder Prozesse unter Verwendung von Blockdiagrammen,
Flussdiagrammen und/oder Beispielen beschrieben. So weit diese Blockdiagramme,
Flussdiagramme und/oder Beispiele ein oder mehrere Funktionen und/oder
Operationen enthalten, wird ein Fachmann verstehen, dass jede Funktion
und/oder Operation in solchen Blockdiagrammen, Flussdiagrammen oder
Beispielen einzeln und/oder gemeinsam durch einen weiten Bereich
an Hardware, Software, Firmware oder praktisch jede Kombination
davon implementiert werden kann. In einer Ausführung können mehrere Teile des hier
beschriebenen Gegenstandes der Erfindung durch anwendungsspezifische
integrierte Schaltkreise, Field Programmable Gate Arrays, digitale
Signalprozessoren oder andere integrierte Schaltkreise implementiert werden.
Ein Fachmann wird jedoch erkennen, dass einige Aspekte der hier
offen gelegten Ausführungen ganz
oder teilweise äquivalent
auch in integrierten Schaltkreisen, wie in ein oder mehreren Computerprogrammen,
die auf einem oder mehreren Computern laufen (z. B. ein oder mehrere
Programme, die auf ein oder mehreren Computersystemen laufen), als
ein oder mehrere Programme, die auf einem oder mehreren Prozessoren
laufen (z. B. ein oder mehrere Programme, die auf einem oder mehreren
Mikroprozessoren laufen), sowie als Firmware oder als praktisch
jede Kombination davon implementiert werden können, und dass die Entwicklung
der Schaltkreise und/oder das Schreiben des Codes der Software und/oder
Firmware angesichts dieser Offenlegung im Rahmen der Fähigkeiten
eines Fachmanns liegen. Zusätzlich
dazu wird ein Fachmann erkennen, dass die Mechanismen des hier beschriebenen
Gegenstandes der Erfindung als Programmprodukt in einer Vielzahl
von Formen verteilt werden können,
und dass eine beispielhafte Ausführung
des hier beschriebenen Gegenstandes der Erfindung unabhängig von
dem speziellen Typ des Signalübertragungsmediums
ist, das zur tatsächlichen
Ausführung
der Verteilung verwendet wird. Beispiele für ein Signalübertragungsmedium
sind folgende, sind aber nicht darauf beschränkt: Ein beschreibbares Medium,
wie z. B. eine Diskette, ein Festplattenlaufwerk, eine CD, eine
DVD, ein digitales Bandlaufwerk, ein Computerspeicher, usw., und
ein Medium vom Übertragungs-Typ,
wie z. B. ein digitales und/oder analoges Kommunikationsmedium (z.
B. ein Kabel mit optischen Fasern, ein Wellenleiter, eine verdrahtete Kommunikationsverbindung,
eine drahtlose Kommunikationsverbindung, usw.).
-
Ein
Fachmann wird erkennen, dass es in der Technik üblich ist, Vorrichtungen und/oder
Prozesse in der hier dargelegten Weise zu beschreiben und danach
in der Technik übliche
Verfahren zu benutzen, um die so beschriebenen Vorrichtungen und/oder Prozesse
in Datenverarbeitungssysteme zu integrieren. Das heißt, mindestens
ein Teil der hier beschriebenen Vorrichtungen und/oder Prozesse
kann durch ein angemessenes Maß an
Experimenten in ein Datenverarbeitungssystem integriert werden.
Ein Fachmann wird erkennen, dass ein typisches Datenverarbeitungssystem
im Allgemeinen ein oder mehrere Komponenten aus einem Gehäuse der
Systemeinheit, einer Video-Bildschirm-Vorrichtung, einem Speicher,
wie einem flüchtigen
und einem nicht flüchtigen Speicher,
Prozessoren, wie Mikroprozessoren und digitalen Signalprozessoren,
Recheninstanzen, wie Betriebssysteme, Treiber, grafische Benutzerschnittstellen
und Anwenderprogramme, ein oder mehrere Interaktions-Vorrichtungen, wie
ein Touch-Pad oder einen Touch-Screen, und/oder Steuerungssysteme, einschließlich Rückkopplungsschleifen
und Steuerungs-Motoren (z. B. Rückmeldung
zur Messung der Position und/oder Geschwindigkeit; Steuerungsmotoren
zur Bewegung und/oder Einstellung von Komponenten und/oder Mengen),
enthält.
Ein typisches Datenverarbeitungssystem kann implementiert werden,
indem beliebige geeignete kommerziell erhältliche Komponenten verwendet
werden, wie man sie z. B. typischerweise in Systemen zur Berechnung/Übertragung
von Daten und/oder in Berechnungs-/Übertragungs-Netzwerksystemen
findet.
-
Der
hier beschriebene Gegenstand der Erfindung zeigt manchmal verschiedene
Komponenten, die in verschiedenen anderen Komponenten enthalten
oder mit ihnen verbunden sind. Es muss verstanden werden, dass solche
dargestellten Architekturen nur beispielhaft sind, und dass tatsächlich viele
andere Architekturen implementiert werden können, die dieselbe Funktionalität erzielen.
In einem konzeptionellen Sinn ist jede Anordnung von Komponenten zum
Erzielen derselben Funktionalität
tatsächlich ”verbunden”, so dass
die gewünschte
Funktionalität erzielt
wird. Somit können
zwei beliebige Komponenten, die hier kombiniert sind, um eine bestimmte Funktionalität zu erzielen,
als ”miteinander
verbunden” betrachtet
werden, so dass die gewünschte Funktionalität erzielt
wird, unabhängig
von Architekturen oder medienübergreifenden
Komponenten. Auf die gleiche Weise können zwei beliebige so miteinander
verbundene Komponenten auch als ”betriebsfähig miteinander verbunden” oder ”betriebsfähig miteinander
gekoppelt” betrachtet
werden, um die gewünschte
Funktionalität
zu erzielen, und zwei beliebige Komponenten, die in der Lage sind,
so miteinander verbunden zu werden, können auch als ”betriebsfähig miteinander
koppelbar” betrachtet
werden, um die gewünschte
Funktionalität
zu erzielen. Spezielle Beispiele für betriebsfähig miteinander koppelbar umfassen
physikalisch anpassbare und/oder physikalisch interagierende Komponenten
und/oder drahtlos interagierbare und/oder drahtlos interagierende Komponenten
und/oder logisch interagierende und/oder logisch interagierbare
Komponenten, sind aber nicht darauf beschränkt.
-
Bezüglich der
Verwendung von im Wesentlichen jeglicher Ausdrücke im Plural und/oder Singular hierin
kann ein Fachmann vom Plural in den Singular und/oder vom Singular
in den Plural umwandeln, wie es für den Kontext und/oder die
Anwendung geeignet ist. Aus Gründen
der Klarheit können
die verschiedenen Singular-/Plural-Vertauschungen hier ausdrücklich dargelegt
werden.
-
Ein
Fachmann wird verstehen, dass die hier benutzten Ausdrücke im Allgemeinen
und insbesondere in den beigefügten
Ansprüchen
(z. B. Hauptteile der beigefügten
Ansprüche)
generell als ”offene” Ausdrücke beabsichtigt
sind (z. B. der Begriff ”enthaltend” muss als ”enthaltend,
aber nicht darauf beschränkt” interpretiert
werden, der Begriff ”hat” muss als ”hat mindestens” interpretiert
werden, der Begriff ”enthält” muss als ”enthält, ist
aber nicht darauf beschränkt”, usw.
interpretiert werden). Ein Fachmann wird ferner verstehen, dass
wenn eine spezielle Anzahl in einer eingeleiteten Anspruchs-Rezitation
beabsichtigt ist, eine solche Absicht in dem Anspruch explizit angegeben
wird, und wenn eine solche Rezitation fehlt, keine solche Absicht
vorliegt. Als Hilfe zum Verständnis
können
zum Beispiel in den folgenden beigefügten Ansprüchen die einleitenden Formulierungen ”mindestens
ein” und ”ein oder
mehrere” verwendet
werden, um Anspruchs- Rezitationen
einzuleiten. Die Verwendung solcher Formulierungen darf jedoch nicht
so ausgelegt werden, dass die Einleitung einer Anspruchs-Rezitation
durch die unbestimmten Artikel ”ein” oder ”eine” bedeutet,
dass jeder spezielle Anspruch, der eine solche eingeleitete Anspruchs-Rezitation
enthält,
auf Erfindungen eingeschränkt
ist, die nur eine solche Rezitation enthalten, sogar wenn der selbe
Anspruch die einleitenden Formulierungen ”ein oder mehrere” und ”mindestens ein” und unbestimmte
Artikel, wie ”ein” oder ”eine” enthält (z. B.
muss ”ein” und/oder ”eine” typischerweise
so interpretiert werden, dass es ”mindestens ein” oder ”ein oder
mehrere” bedeutet).
Dasselbe gilt auch für
die Verwendung von bestimmten Artikeln, die dazu benutzt werden,
Anspruchs-Rezitationen einzuleiten.
Zusätzlich
dazu wird, sogar wenn ein spezieller Numerus einer eingeleiteten
Anspruchs-Rezitation explizit angegeben wird, ein Fachmann erkennen,
dass eine solche Rezitation typischerweise so interpretiert werden
muss, dass mindestens die angegebene Anzahl gemeint ist (z. B. bedeutet
die bloße
Rezitation von ”zwei
Rezitationen” ohne
weitere Modifizierer typischerweise mindestens zwei Rezitationen
oder zwei oder mehr Rezitationen). Ferner ist in den Fällen, in
denen eine Konvention verwendet wird, die ”mindestens einem von A, B und
C, usw.” entspricht,
eine solche Konstruktion im Allgemeinen in dem Sinn beabsichtigt,
in dem ein Fachmann die Konvention verstehen würde (z. B. wird ”ein System,
das mindestens eines von A, B und C hat” Systeme umfassen, die A alleine,
B alleine, C alleine, A und B zusammen, A und C zusammen, B und
C zusammen und/oder A, B und C zusammen, usw. haben, ist aber nicht
darauf beschränkt).
In den Fällen,
in denen eine Konvention verwendet wird, die ”mindestens einem von A, B
oder C, usw.” entspricht, ist
eine solche Konstruktion im Allgemeinen in dem Sinn beabsichtigt,
in dem ein Fachmann die Konvention verstehen würde (z. B. wird ”ein System,
das mindestens eines von A, B oder C hat” Systeme umfassen, die A alleine,
B alleine, C alleine, A und B zusammen, A und C zusammen, B und
C zusammen und/oder A, B und C zusammen, usw. haben, ist aber nicht
darauf beschränkt).
Ein Fachmann wird ferner verstehen, dass praktisch jedes disjunktive
Wort und/oder praktisch jede Formulierung, die zwei oder mehr alternative
Begriffe darlegt, in der Beschreibung, den Ansprüchen oder Zeichnungen so verstanden
werden muss, dass die Möglichkeit
besteht, dass sie einen der Begriffe, einen von beiden Begriffen oder
beide Begriffe umfasst. Zum Beispiel wird die Formulierung ”A oder
B” so
verstanden, dass die Möglichkeiten ”A” oder ”B” oder ”A und B” enthalten sind.
-
Obwohl
verschiedene Aspekte und Ausführungen
hier offen gelegt wurden, sind andere Aspekte und Ausführungen
einem Fachmann ersichtlich. Die verschiedenen hier offen gelegten
Aspekte und Ausführungen
dienen nur zum Zweck der Erklärung und
sind nicht als Einschränkung
beabsichtigt, wobei der genaue Umfang und Geist der Erfindung durch die
folgenden Ansprüche
angegeben wird.