-
TECHNISCHES GEBIET
-
Ausführungsformen der vorliegenden Erfindung betreffen auf einer Cloud beruhende Benachrichtigungen und insbesondere syndizierte, auf einer Cloud beruhende Benachrichtigungen als Dienst.
-
HINTERGRUND
-
Für viele Internet- und Intranet-Benutzer gibt es eine überwältigende Menge von Inhalten, die online verfügbar sind, was es für die Benutzer schwierig macht festzustellen, welche Inhalte ihren Interessen entsprechen. Einige Websites beheben dieses Problem teilweise, indem sie Abonnements für ihre Inhalte aktivieren.
-
Die Abonnements haben verschiedene Formen. Einige Websites verfügen über Abonnement-Infrastrukturen, über die Benutzer eMail-Benachrichtigungen erhalten können, wenn sich bestimmte Inhalte geändert haben. Eine weitere gängige Implementierung ist eine Verwendung von RSS-Feeds (Rich Site Summary), mit denen Benutzer Websites abonnieren können. Viele Website-Publishing-Anwendungen enthalten integrierte Tools oder aktivieren Add-Ons, die auf der Grundlage von neuen Inhalten automatisch RSS-Feeds erzeugen. Ein RSS-Client, der vom Benutzer verwendet wird, fragt periodisch die RSS-Feeds jeder Website ab, für die ein Benutzer abonniert ist, und benachrichtigt den Benutzer über neue Inhalte.
-
Diese Formen der Benachrichtigung haben zahlreiche Nachteile. Sie erlauben Benutzern nicht, unter mehreren Möglichkeiten der Benachrichtigung zu wählen. Stattdessen werden Benutzer per eMail oder über eine Anwendung benachrichtigt, die ihren RSS-Clients zugehörig ist. Des Weiteren sind die Benutzer nicht in der Lage, bestimmte Kategorien von Inhalten für jede Website auswählen. Folglich muss ein Benutzer unerwünschte Inhalte auf Websites, für die er abonniert ist, sortieren, um die Teilmenge der Inhalte zu erkennen, die seinen Interessen entsprechen.
-
Kurz gesagt, bestehende Benachrichtigungssysteme sind unbequem und schlagen bei den von ihnen gelieferten Inhalten fehl.
-
Daher besteht in der Technik ein Bedarf, das oben erwähnte Problem anzugehen.
-
KURZDARSTELLUNG
-
Gemäß einem ersten Aspekt stellt die vorliegende Erfindung eine Überwachung einer Inhaltsquelle eines Inhaltsanbieters durch einen Computerprozessor bereit, wobei das Überwachen aufweist: periodisches Lesen einer Notification-as-a-Service- (NaaS-) Erweiterung in einem RSS-Feed (Rich Site Summary), der der Inhaltsquelle zugehörig ist; wobei die NaaS-Erweiterung eine Mehrzahl von Interessenkategorien der Inhaltsquelle definiert; Erkennen eines neuen Inhalts in der Inhaltsquelle auf der Grundlage des periodischen Lesens der NaaS-Erweiterung, wobei der neue Inhalt einer ersten Interessenkategorie der Mehrzahl von Interessenkategorien zugehörig ist; Erkennen eines Benutzers, der abonniert ist, um Benachrichtigungen über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten; und Benachrichtigen des Benutzers über den neuen Inhalt in Reaktion darauf, dass der neue Inhalt der ersten Interessenkategorie zugehörig ist und der Benutzer abonniert ist, um eine Benachrichtigung über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten.
-
Unter einem weiteren Gesichtspunkt stellt die vorliegende Erfindung ein System zum Anzeigen von Inhaltsänderungen bereit, das aufweist: einen Speicher mit durch einen Computer lesbaren Anweisungen; und einen oder mehrere Prozessoren zum Ausführen der durch einen Computer lesbaren Anweisungen, wobei die durch einen Computer lesbaren Anweisungen Folgendes aufweisen: Überwachen einer Inhaltsquelle eines Inhaltsanbieters, wobei das Überwachen aufweist: periodisches Lesen einer Notification-as-a-Service- (NaaS-) Erweiterung in einem Rich-Site-Summary- (RSS-) Feed, der der Inhaltsquelle zugehörig ist; wobei die NaaS-Erweiterung eine Mehrzahl von Interessenkategorien der Inhaltsquelle definiert; Erkennen eines neuen Inhalts in der Inhaltsquelle auf der Grundlage des periodischen Lesens der NaaS-Erweiterung, wobei der neue Inhalt einer ersten Interessenkategorie der Mehrzahl von Interessenkategorien zugehörig ist; Erkennen eines Benutzers, der abonniert ist, um Benachrichtigungen über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten; und Benachrichtigen des Benutzers über den neuen Inhalt in Reaktion darauf, dass der neue Inhalt der ersten Interessenkategorie zugehörig ist und der Benutzer abonniert ist, um eine Benachrichtigung über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten.
-
Unter einem weiteren Aspekt stellt die vorliegende Erfindung ein Computerprogrammprodukt zum Benachrichtigen von Inhaltsänderungen bereit, wobei das Computerprogrammprodukt Folgendes aufweist: ein durch einen Computer lesbares Speichermedium, das von einer Verarbeitungsschaltung lesbar ist und Anweisungen zum Ausführen durch die Verarbeitungsschaltung speichert, um ein Verfahren zum Ausführen der Schritte der Erfindung auszuführen.
-
Von einem weiteren Aspekt ausgehend stellt die vorliegende Erfindung ein Computerprogramm bereit, das auf einem durch einen Computer lesbaren Medium gespeichert ist und in den internen Speicher eines digitalen Computers geladen werden kann, das Softwarecodeabschnitte zum Ausführen der Schritte der Erfindung aufweist, wenn das Programm auf einem Computer abläuft.
-
Gemäß einer Ausführungsform dieser Offenbarung enthält ein durch einen Computer implementiertes Verfahren Überwachen einer Inhaltsquelle eines Inhaltsanbieters durch einen Computerprozessor. Diese Überwachung enthält periodisches Lesen einer NaaS-Erweiterung (Notification as a Service) in einem RSS-Feed (Rich Site Summary), der der Inhaltsquelle zugehörig ist, wobei die NaaS-Erweiterung eine Mehrzahl von Interessenkategorien der Inhaltsquelle definiert. Ein neuer Inhalt wird in der Inhaltsquelle auf der Grundlage eines periodischen Lesens der NaaS-Erweiterung erkannt, und der neue Inhalt ist einer ersten Interessenkategorie der Mehrzahl von Interessenkategorien zugehörig. Ein Benutzer wird als abonniert gekennzeichnet, um Benachrichtigungen über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten. Der Benutzer wird über den neuen Inhalt in Reaktion darauf informiert, dass der neue Inhalt der ersten Interessenkategorie zugehörig ist und der Benutzer abonniert ist, um eine Benachrichtigung über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten.
-
In einer weiteren Ausführungsform enthält ein System einen Speicher mit durch einen Computer lesbaren Anweisungen und einen oder mehrere Prozessoren zum Ausführen der durch einen Computer lesbaren Anweisungen. Die durch einen Computer lesbaren Anweisungen enthalten Überwachen einer Inhaltsquelle eines Inhaltsanbieters. Dieses Überwachen enthält periodisches Lesen einer Notification-as-a-Service- (NaaS-) Erweiterung in einem RSS-Feed, der der Inhaltsquelle zugehörig ist, wobei die NaaS-Erweiterung eine Mehrzahl von Interessenkategorien der Inhaltsquelle definiert. Ferner wird gemäß den durch einen Computer lesbaren Anweisungen ein neuer Inhalt in der Inhaltsquelle auf der Grundlage eines periodischen Lesens der NaaS-Erweiterung erkannt, wobei der neue Inhalt einer ersten Interessenkategorie der Mehrzahl von Interessenkategorien zugehörig ist. Ein Benutzer wird als abonniert gekennzeichnet, um Benachrichtigungen über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten. Der Benutzer wird über den neuen Inhalt in Reaktion darauf informiert, dass der neue Inhalt der ersten Interessenkategorie zugehörig ist und der Benutzer abonniert ist, um eine Benachrichtigung über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten.
-
In einer nochmals weiteren Ausführungsform enthält ein Computerprogrammprodukt zum Benachrichtigen über Inhaltsänderungen ein durch einen Computer lesbares Speichermedium mit Programmanweisungen, die darin verkörpert sind. Die Programmanweisungen sind durch einen Prozessor ausführbar, um den Prozessor zum Ausführen eines Verfahrens zu veranlassen. Das Verfahren enthält Überwachen einer Inhaltsquelle eines Inhaltsanbieters. Dieses Überwachen enthält periodisches Lesen einer NaaS-Erweiterung in einem RSS-Feed, der der Inhaltsquelle zugehörig ist, wobei die NaaS-Erweiterung eine Mehrzahl von Interessenkategorien der Inhaltsquelle definiert. Ferner wird gemäß dem Verfahren ein neuer Inhalt in der Inhaltsquelle auf der Grundlage eines periodischen Lesens der NaaS-Erweiterung erkannt, und ein neuer Inhalt ist einer ersten Interessenkategorie der Mehrzahl von Interessenkategorien zugehörig. Ein Benutzer wird als abonniert gekennzeichnet, um Benachrichtigungen über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten. Der Benutzer wird über den neuen Inhalt in Reaktion darauf informiert, dass der neue Inhalt der ersten Interessenkategorie zugehörig ist und der Benutzer abonniert ist, um eine Benachrichtigung über Inhaltsänderungen in der ersten Interessenkategorie zu erhalten.
-
Ein Vorteil dieser Ausführungsformen ist die Fähigkeit, eine NaaS-Erweiterung eines RSS-Feed zum Überwachen einer Inhaltsquelle auf neue Inhalte sowie Informationen über Interessenkategorien zu verwenden, die von einem Inhaltsanbieter ausgewählt werden. Da der Inhaltsanbieter wahrscheinlich bereits einen RSS-Feed verwendet, ist die Belastung für Inhaltsanbieter gering, und der Inhaltsanbieter verfügt über ein Mittel, seine Informationen auf eine Weise zu verbreiten, die für seine Benutzer bequem ist, wodurch die Benutzerfreundlichkeit verbessert wird und diese Benutzer erhalten bleiben.
-
Zusätzlich enthalten einige Ausführungsformen ein Speichern der Mehrzahl von Interessenkategorien in einem Schemaspeicher und ein Übertragen einer Liste der Mehrzahl von Interessenkategorien an ein Interessen-Widget, das in Verbindung mit der Inhaltsquelle angezeigt wird. Durch dieses Interessen-Widget kann eine Auswahl der ersten Interessenkategorie eines Benutzers empfangen werden. Solche Ausführungsformen haben somit den Vorteil, dass sie ein Interessen-Widget bereitstellen, mit dem Benutzer Interessenkategorien abonnieren können, wobei diese Interessenkategorien spezifisch für den Inhaltsanbieter sind und über die NaaS-Erweiterung ausgetauscht werden.
-
Ferner können einige Ausführungsformen Erkennen einer Schemaänderung in der Inhaltsquelle auf der Grundlage des periodischen Lesens der NaaS- Erweiterung enthalten. Die Mehrzahl von Interessenkategorien, die in dem Schemaspeicher gespeichert sind, kann in Reaktion auf die Schemaänderung aktualisiert werden. Das Interessen-Widget kann in Reaktion auf Aktualisieren der Mehrzahl von Interessenkategorien aktualisiert werden. Somit haben diese Ausführungsformen den Vorteil, dass das Interessen-Widget automatisch aktualisiert wird, um das Interessen-Widget aktuell zu halten, wodurch es Benutzern ermöglicht wird, die aktuellen Interessenkategorien des Inhaltanbieters zu abonnieren, wenn sie sich im Laufe der Zeit ändern.
-
In einigen Ausführungsformen stellt die NaaS-Erweiterung in dem RSS-Feed ferner einen Satz von verfügbaren Benachrichtigungsoptionen bereit. Der Satz von verfügbaren Benachrichtigungsoptionen kann in einem Schemaspeicher gespeichert sein und kann an ein Interessen-Widget übertragen werden, das in Verbindung mit der Inhaltsquelle angezeigt wird. Bei dem Interessen-Widget kann eine Auswahl einer ersten Benachrichtigung in dem Satz von verfügbaren Benachrichtigungsoptionen von dem Benutzer empfangen werden. Ferner kann das Benachrichtigen des Benutzers über den neuen Inhalt ein Verwenden der ersten Benachrichtigungsoption in Reaktion auf die Auswahl der ersten Benachrichtigungsoption durch den Benutzer beinhalten. Infolgedessen ermöglichen diese Ausführungsformen, dass ein Interessen-Widget eine Liste von Benachrichtigungsoptionen auf der Grundlage der NaaS-Erweiterung bereitstellt, und der Benutzer kann das Interessen-Widget verwenden, um eine Benachrichtigungsoption auszuwählen, die bei dem Inhaltsanbieter zur Verfügung steht.
-
Ferner enthalten einige Ausführungsformen Erkennen einer Schemaänderung in der Inhaltsquelle auf der Grundlage des periodischen Lesens der NaaS-Erweiterung. Der Satz von verfügbaren Benachrichtigungsoptionen, der in dem Schemaspeicher gespeichert ist, kann in Reaktion auf die Schemaänderung aktualisiert werden. Das Interessen-Widget kann in Reaktion auf Aktualisieren des Satzes von verfügbaren Benachrichtigungsoptionen, die in dem Schemaspeicher gespeichert sind, aktualisiert werden. Ein Vorteil dieser Ausführungsformen ist die Fähigkeit, das Interessen-Widget mit den aktuell verfügbaren Benachrichtigungsoptionen des Inhaltsanbieters aktualisiert zu halten, selbst wenn sich diese Benachrichtigungsoptionen im Laufe der Zeit ändern.
-
Ferner können einige Ausführungsformen andere Inhaltsquellen anderer Inhaltsanbieter überwachen, wobei dieses Überwachen periodisches Lesen anderer NaaS-Erweiterungen anderer RSS-Feeds beinhaltet, die diesen anderen Inhaltsquellen zugehörig sind. Die anderen NaaS-Erweiterungen können andere Interessenkategorien der anderen Inhaltsquellen definieren. Dies kann den Vorteil haben, einen Dienst für mehrere Inhaltsanbieter zu bilden, wodurch Größenvorteile genutzt werden, wobei jeder Inhaltsanbieter seine eigenen Interessenkategorien in der NaaS-Erweiterung seines RSS-Feed beschreiben kann.
-
Zusätzliche Merkmale und Vorteile werden durch die Techniken der vorliegenden Erfindung realisiert. Andere Ausführungsformen und Aspekte der Erfindung werden hierin im Detail beschrieben und werden als Teil der beanspruchten Erfindung betrachtet. Zum besseren Verständnis der Erfindung mit den Vorteilen und den Merkmalen wird auf die Beschreibung und auf die Zeichnungen verwiesen.
-
Figurenliste
-
Der Gegenstand, der als die Erfindung angesehen wird, wird in den Ansprüchen am Ende der Beschreibung besonders hervorgehoben und deutlich beansprucht. Die vorstehenden und andere Merkmale und Vorteile der Erfindung gehen aus der folgenden genauen Beschreibung in Verbindung mit den beigefügten Zeichnungen hervor, in denen:
- 1 eine Darstellung eines Benachrichtigungssystems gemäß einigen Ausführungsformen dieser Offenbarung ist;
- 2 ein Ablaufplan eines Verfahrens zum Benachrichtigen von Benutzern über neue Inhalte gemäß einigen Ausführungsformen dieser Offenbarung ist;
- 3 ein beispielhaftes Interessen-Widget gemäß einigen Ausführungsformen dieser Offenbarung veranschaulicht;
- 4 eine weitere Darstellung des Benachrichtigungssystems gemäß einigen Ausführungsformen dieser Offenbarung ist;
- 5 eine nochmals weitere Darstellung des Benachrichtigungssystems gemäß einigen Ausführungsformen dieser Offenbarung ist;
- 6 ein Ablaufplan eines Verfahrens zum Benachrichtigen von Benutzern von Aktivitäten in sozialen Medien gemäß einigen Ausführungsformen dieser Offenbarung ist;
- 7 eine Blockdarstellung eines Computersystems zum Implementieren einiger oder aller Aspekte des Benachrichtigungssystems gemäß einigen Ausführungsformen dieser Offenbarung ist;
- 8 eine Cloud-Computing-Umgebung gemäß einigen Ausführungsformen dieser Offenbarung zeigt; und
- 9 Abstraktionsmodellschichten gemäß einigen Ausführungsformen dieser Offenbarung zeigt.
-
GENAUE BESCHREIBUNG
-
Verschiedene Ausführungsformen eines Benachrichtigungssystems gemäß dieser Offenbarung stellen eine Infrastruktur Notification as a Service (NaaS) bereit, um Benutzer lediglich über die Kategorien von Inhalten zu benachrichtigen, die sie interessieren, wobei diese Kategorien über Inhaltsanbieter variieren können und wobei die Benachrichtigungen über die bevorzugten Kanäle des Benutzers ankommen. In einem allgemeineren Sinn kann das Benachrichtigungssystem Aktualisierungen bei verschiedenen Quellen, wie etwa Websites, mittels einer NaaS-Erweiterung überwachen, die in RSS-Feeds (Rich Site Summary) enthalten ist, und kann daher Benutzer auf der Grundlage dieser Überwachung über ausgewählte Daten benachrichtigen.
-
Herkömmlicherweise sind Inhaltsanbieter in ihren Mechanismen zur Benachrichtigung von Benutzern über neue Inhalte eingeschränkt. Darüber hinaus sind sie in der Regel nicht in der Lage, Benutzer über mehr als einen einzigen Datenübertragungskanal zu benachrichtigen, bei dem es sich gewöhnlich um eMail handelt.
-
Das Benachrichtigungssystem kann Zeit und Kosten verringern, die mit dem Hinzufügen neuer Benachrichtigungskanäle zu einer bestehenden oder neuen Inhaltsquelle verbunden sind. Erstellen oder Aktualisieren eines Benachrichtigungsdienstes für einen einzelnen Inhaltsanbieter kann aufgrund der Ressourcen, die zum Entwickeln und Testen eines neuen Benachrichtigungskanals erforderlich sind, zeitaufwändig und teuer sein. Viele Organisationen verfügen nicht über die erforderlichen Ressourcen. Einige Ausführungsformen des Benachrichtigungssystems können jedoch Skalierungseffekte und Zeitvorteile nutzen, da die Kosten für ein Implementieren der grundlegenden Infrastruktur, die für den NaaS benötigt wird, auf mehrere Inhaltsanbieter verteilt sein können.
-
1 ist eine Darstellung eines Benachrichtigungssystems 100 gemäß einigen Ausführungsformen dieser Offenbarung. Das Benachrichtigungssystem 100 kann den NaaS implementieren, bei dem es sich um eine Infrastruktur zum Benachrichtigen von Benutzern über neue Inhalte gemäß den Präferenzen der Benutzer handeln kann.
-
Wie gezeigt, kann das Benachrichtigungssystem 100 einen Einstiegsdienst 110, einen Produktionsdienst 120, eine Überwachungseinrichtung 140 und eine Benachrichtigungseinrichtung 150 enthalten. In einigen Ausführungsformen kann es sich bei diesen Komponenten um Cloud-Dienste handeln, die durch das Verwenden einer oder mehrerer Clouds implementiert werden. Zum Beispiel kann der Einstiegsdienst 110 einen oder mehrere Server enthalten, die eine erste Cloud bilden, und der Produktionsdienst 120 kann einen oder mehrere Server enthalten, die eine zweite Cloud bilden. Ferner können die Überwachungseinrichtung 140 und die Benachrichtigungseinrichtung 150 jeweils einer bestimmten Cloud zugehörig sein. Es versteht sich jedoch, dass bei einigen Ausführungsformen diese Komponenten unterschiedlich angeordnet sein können. Zum Beispiel können in einigen Ausführungsformen der Einstiegsdienst 110, der Produktionsdienst 120, die Überwachungseinrichtung 140 und die Benachrichtigungseinrichtung 150 Hardware, Software oder beides gemeinsam nutzen, wodurch eine einzige Cloud gebildet wird.
-
Das Benachrichtigungssystem 100 kann ferner einen Benutzerspeicher 160 und einen Schemaspeicher 170 enthalten. Der Benutzerspeicher 160 kann einen Benutzerdatensatz für jeden Benutzer speichern, der Inhalte von mindestens einem der Inhaltsanbieter abonniert hat. Der Benutzerdatensatz eines Benutzers kann die Interessenkategorien angeben, die von dem Benutzer für jeden Inhaltsanbieter ausgewählt werden, bei dem der Benutzer abonniert ist. Ferner kann der Benutzerdatensatz in einigen Ausführungsformen ausstehende Benachrichtigungen enthalten, die noch an den Benutzer gesendet werden müssen. Der Schemaspeicher kann ein Schema für jeden Inhaltsanbieter speichern, wobei dieses Schema Definitionen von Interessenkategorien sowie verfügbare Benachrichtigungsoptionen für den Inhaltsanbieter enthalten kann.
-
Im Allgemeinen kann der Einstiegsdienst 110 einen Inhaltsanbieter in die Lage versetzen, seine Inhaltsquelle 180, beispielsweise eine Website, beim Benachrichtigungssystem 100 zu registrieren; der Produktionsdienst 120 kann eine Bereitstellung und Aktivierung des NaaS ermöglichen, der von dem Benachrichtigungssystem 100 bereitgestellt wird; die Überwachungseinrichtung 140 kann Inhaltsquellen 180 auf Änderungen der Inhalte und auf Änderungen von Schemas, die in dem Schemaspeicher 170 gespeichert sind, überwachen; und die Benachrichtigungseinrichtung 150 kann Benutzer mit ihren spezifizierten Interessenkategorien, die in dem Benutzerspeicher 160 gespeichert sind, abgleichen, um diese Benutzer über neue Inhalte zu benachrichtigen.
-
2 ist ein Ablaufplan eines Verfahrens 200 zum Benachrichtigen von Benutzern über einen neuen Inhalt gemäß einigen Ausführungsformen dieser Offenbarung.
-
Im Block 205 registriert sich ein Inhaltsanbieter, um das Benachrichtigungssystem 100 zu verwenden. Im Block 210 kann in einigen Ausführungsformen eine Test-Site für den Inhaltsanbieter bereitgestellt werden. Bei der Test-Site kann es sich um eine funktionsfähige Website handeln, für die Anmeldeinformationen erforderlich sind. Sobald die Anmeldeinformationen eingegeben worden sind, kann ein Testbenutzer Inhalte abonnieren und Benachrichtigungen über das Benachrichtigungssystem 100 empfangen. Mit der Test-Site kann der Inhaltsanbieter seine Einstellungen (z.B. sein Schema) in Bezug auf den NaaS privat modifizieren. Bevor das Benachrichtigungssystem 100 für den Inhaltsanbieter aktiviert wird, muss der Inhaltsanbieter in einigen Ausführungsformen Geschäftsbedingungen des NaaS akzeptieren. Im Block 215 kann das Benachrichtigungssystem 100 den NaaS für den Inhaltsanbieter aktivieren. Im Block 220 kann der Inhaltsanbieter ein Interessen-Widget auf seiner Website bereitstellen. Später kann ein Benutzer das Interessen-Widget verwenden, um Interessenkategorien innerhalb des Inhalts des Inhaltsanbieters auszuwählen.
-
3 veranschaulicht ein beispielhaftes Interessen-Widget 300 gemäß einigen Ausführungsformen dieser Offenbarung. In einigen Ausführungsformen kann das Interessen-Widget 300 dem Benutzer ermöglichen, Interessenkategorien sowie Benachrichtigungsoptionen auszuwählen. Zu diesem Zweck kann das Interessen-Widget 300 beim Laden Daten erhalten, die das aktuelle Schema der Inhaltsquelle 180 beschreiben, das in dem Schemaspeicher 170 gespeichert ist. Das Interessen-Widget 300 kann somit eine aktuelle Liste auswählbarer Interessenkategorien und Benachrichtigungsoptionen bereitstellen, und der Benutzer kann eine Auswahl innerhalb des Interessen-Widget 300 treffen. Die Benachrichtigungsoptionen können beispielsweise eMail, Kurznachrichtendienst- (SMS-) Textnachricht, Sofortnachricht, Facebook, Twitter, Blog, Wiki oder eine Kombination aus diesen und anderen Optionen enthalten. Der Satz verfügbarer Interessenkategorien kann vom Inhaltsanbieter ausgewählt werden und muss nicht mit denen anderer Inhaltsanbieter übereinstimmen, die den NaaS und das Benachrichtigungssystem 100 verwenden. Somit haben einige Ausführungsformen des Benachrichtigungssystems 100 verglichen mit existierenden Benachrichtigungsmechanismen 100 den Vorteil eines Anpassens an Inhaltsanbieter, ohne dass die Interessenkategorien der Inhaltsanbieter in gemeinsame Kategorien, die von allen Inhaltsanbietern verwendet werden, eingeordnet werden müssen.
-
Wieder in 2 kann im Block 225 ein Benutzer auf der Website des Inhaltsanbieters unter Verwendung des Interessen-Widgets 300 ein Abonnement einrichten. Insbesondere kann der Benutzer beispielsweise das Interessen-Widget 300 verwenden, um eine oder mehrere Interessenkategorien des Inhaltsanbieters auszuwählen und um eine oder mehrere Benachrichtigungsoptionen auszuwählen. Im Block 230 können auf der Grundlage des Verwendens des Interessen-Widgets 300 Informationen über den Benutzer an den Benutzerspeicher 160 übertragen werden, um einen aktualisierten Benutzerdatensatz für den Benutzer in dem Benutzerspeicher 160 bereitzustellen. Diese Informationen können Kenninformationen über den Benutzer, die vom Benutzer ausgewählten Benachrichtigungsoptionen sowie die Kontaktinformationen für die Verwendung dieser Benachrichtigungsoptionen und die ausgewählten Interessenkategorien des Benutzers enthalten. In einigen Fällen, beispielsweise wenn der Benutzer zuvor keine Aufzeichnung in dem Benutzerspeicher 160 hatte, kann das Bereitstellen des aktualisierten Benutzerdatensatzes ein Hinzufügen eines Benutzerdatensatzes für den Benutzer zum Benutzerspeicher 160 enthalten. Der Benutzerdatensatz kann die ausgewählte(n) Interessenkategorie(n) des Benutzers und eine oder mehrere Benachrichtigungsoptionen für die Website angeben. Aufgrund des Benutzerdatensatzes ist das Benachrichtigungssystem 100 in einigen Ausführungsformen in der Lage, den Benutzer über neue Inhalte zu informieren, die in die ausgewählten Interessenkategorien fallen, und diese Benachrichtigung kann gemäß den ausgewählten Benachrichtigungsoptionen des Benutzers gesendet werden.
-
Die von Benutzern ausgewählten Interessenkategorien können von Inhaltsanbietern als Quelle von Einsichten in Benutzerinteressenbereiche verwendet werden. Somit kann in einigen Ausführungsformen jeder Inhaltsanbieter Zugriff auf Daten haben, welche Benutzer welche der angebotenen Interessenkategorien abonniert haben, oder der Inhaltsanbieter kann auf allgemeinere statistische Angaben zugreifen, die die Abonnements beschreiben. Mit diesen Angaben kann der Inhaltsanbieter seine Veröffentlichungen beispielsweise auf der Grundlage dessen, welche Interessenkategorien häufig von Benutzern ausgewählt werden, anpassen oder priorisieren.
-
Im Block 240 kann die Überwachungseinrichtung 140 Änderungen an dem Inhalt und dem Schema des Inhaltsanbieters überwachen. Zu diesem Zweck kann die Überwachungseinrichtung 140 periodisch den RSS-Feed der Inhaltsquelle 180 auf Änderungen prüfen. Wie es normalerweise der Fall ist, kann der RSS-Feed Änderungen an den Inhalten der Website anzeigen. Darüber hinaus kann, wie oben erläutert, die NaaS-Erweiterung des RSS-Feed das aktuelle Schema definieren. Des Weiteren kann innerhalb des RSS-Feed jedes Inhaltselement (z.B. jeder Artikel oder Blogpost) einer oder mehreren Interessenkategorien zugehörig sein.
-
Zwar ist in 1 lediglich eine einzige Inhaltsquelle 180 gezeigt, es versteht sich jedoch, dass ein oder mehrere Inhaltsanbieter bei dem Benachrichtigungssystem 100 registriert sein können und somit die Überwachungseinrichtung 140 eine oder mehrere RSS-Feeds überwachen kann, die einer oder mehreren Inhaltsquellen 180 von einem oder mehreren Inhaltsanbietern zugehörig sind. Ferner kann die Überwachungseinrichtung 140 in einigen Ausführungsformen als zwei verschiedene Überwachungseinrichtungen implementiert sein, eine Schemaänderungs-Überwachungseinrichtung zum Identifizieren von Änderungen am Schema und eine Inhalts-Überwachungseinrichtung zum Erkennen von Änderungen am Inhalt der Website.
-
Der Inhaltsanbieter kann gelegentlich Änderungen an den Inhalten seiner Inhaltsquelle 180 oder an seinem Schema vornehmen. Eine solche Änderung kann zum Beispiel in Form von neuen Inhalten wie einem neuen Artikel oder einem Blogpost bestehen. Diese Änderung ihrer Inhalte kann sich in einem zugehörigen RSS-Feed für die Inhaltsquelle 180 widerspiegeln. Der RSS-Feed kann auch eine oder mehrere Interessenkategorien angeben, die jedem neuen Element der Inhalte in seiner Inhaltsquelle 180 zugehörig sind.
-
Um am Benachrichtigungssystem teilnehmen zu können, muss der Inhaltsanbieter möglicherweise eine NaaS-Erweiterung in seinen RSS-Feed aufnehmen. Die NaaS-Erweiterung kann ein Abschnitt des RSS-Feed sein, der das Schema des Inhaltsanbieters definiert, der seine Interessenkategorien und verfügbaren Benachrichtigungsoptionen enthält. Wenn der Inhaltsanbieter beispielsweise eine Hierarchie von Kategorien und Unterkategorien hat, kann diese Hierarchie im NaaS-Abschnitt definiert werden. Wenn Änderungen am Schema auftreten, kann der NaaS-Abschnitt des RSS-Feed entsprechend geändert werden.
-
Wie bei herkömmlichen RSS-Feeds kann die NaaS-Erweiterung im XML-Format geschrieben werden. Ferner kann in einigen Ausführungsformen die Einbeziehung der NaaS-Erweiterung den Rest des RSS-Feed intakt lassen, wodurch herkömmliche RSS-Clients die Daten, die sie normalerweise erfassen würden, aus dem RSS-Feed erfassen können.
-
Im Entscheidungsblock 245 kann ermittelt werden, ob eine Änderung in dem RSS-Feed gefunden wird, und wenn ja, welche Art von Änderung (d.h. eine Änderung des Schemas oder eine Änderung des Inhalts). Wenn keine Änderung festgestellt wird, kann die Überwachungseinrichtung 140 die Überwachung des RSS-Feed im Block 240 fortsetzen.
-
Wenn eine Schemaänderung erkannt wird, kann das Benachrichtigungssystem im Block 250 eine aktualisierte Version des Schemas in dem Schemaspeicher 170 speichern. Ein Hinzufügen einer aktualisierten Version kann das Modifizieren des Schemas, das aktuell für den Inhaltsanbieter gespeichert ist, oder im Fall von einem neu registrierten Inhaltsanbieter, ein Hinzufügen des Schemas zu dem Schemaspeicher 170 beinhalten.
-
In einigen Ausführungsformen kann das Schema, das für einen Inhaltsanbieter in dem Schemaspeicher 170 gespeichert ist, durch andere Mechanismen geändert werden, zusätzlich oder alternativ dazu, dass es in der NaaS-Erweiterung geändert wird. Beispielsweise und nicht einschränkend kann der Inhaltsanbieter eine Schemaänderung an das Benachrichtigungssystem 100 senden. Bei Empfang dieser Schemaänderung kann das Benachrichtigungssystem 100 das in dem Schema-Speicher 170 gespeicherte Schema entsprechend aktualisieren.
-
Da das Interessen-Widget 300 Daten über das Schema empfangen kann, das in dem Schemaspeicher 170 gespeichert ist, kann das Modifizieren des Schemas in dem Schemaspeicher 170 gleichermaßen das Interessen-Widget 300 modifizieren, um die aktuellen Interessenkategorien und verfügbaren Benachrichtigungsoptionen wiederzugeben. Nach dem Aktualisieren des Schemas kann das Verfahren 200 dann zum Block 240 zurückkehren, wo die Überwachungseinrichtung 140 weiterhin den RSS-Feed überwachen kann.
-
Wenn eine Inhaltsänderung erkannt wird, kann die Überwachungseinrichtung im Block 255 einen oder mehrere Interessenkategorien, die neuen Inhalten zugehörig sind, in dem RSS-Feed kennzeichnen. Im Block 260 kann das Benachrichtigungssystem 100 Benutzer kennzeichnen, die den Interessenkategorien des neuen Inhalts entsprechen. Zu diesem Zweck kann die Benachrichtigungseinrichtung 150 die Interessenkategorien des neuen Inhalts mit den Interessenkategorien verschiedener Benutzer vergleichen, die durch Benutzerdatensätze in dem Benutzerspeicher 160 dargestellt werden, und kann jeden Benutzer, bei dem ein Interesse an mindestens einer Interessenkategorie des neuen Inhalts angegeben ist, als dazugehörigen Benutzer (matching user) kennzeichnen.
-
In einigen Ausführungsformen können zu dazugehörigen Benutzern ein oder mehrere Benutzer gehören, die nicht explizit eine der Interessenkategorien des neuen Inhalts ausgewählt haben, aber ansonsten angegeben haben, dass sie an dem neuen Inhalt interessiert sein könnten. Zum Beispiel kann das Benachrichtigungssystem 100 Analysen anwenden, um zu ermitteln, welche neuen Inhalte Benutzer interessieren könnte. Das Benachrichtigungssystem 100 kann auf der Grundlage der von einem Benutzer ausgewählten Interessenkategorien eines Anbieters ergründen, ob andere Interessenkategorien oder insbesondere der neue Inhalt für den Benutzer von Interesse sein könnten. Wenn festgestellt wird, dass der Benutzer interessiert sein könnte, obwohl er nicht explizit eine Interessenkategorie ausgewählt hat, die auf den neuen Inhalt anwendbar ist, kann der Benutzer als dazugehöriger Benutzer gekennzeichnet werden. In einigen Ausführungsformen kann dieses Merkmal lediglich für Benutzer gelten, die angegeben haben, dass sie gerne teilnehmen würden, etwa indem sie eine Option „Suche erweitern“ oder dergleichen auf dem Interessen-Widget 300 ausgewählt haben.
-
Im Block 265 kann die Benachrichtigungseinrichtung 150 für jeden dazugehörigen Benutzer mindestens eine Benachrichtigungsoption auswählen, die aus den Benachrichtigungsoptionen ausgewählt werden kann, die zuvor durch das Benutzer-Widget 300 oder durch andere Mittel ausgewählt wurden. Im Block 270 kann die Benachrichtigungseinrichtung 150 an jeden dazugehörigen Benutzer eine Benachrichtigung über den neuen Inhalt unter Verwendung der ausgewählten Benachrichtigungsoption für diesen dazugehörigen Benutzer senden.
-
Wenn beispielsweise in einigen Ausführungsformen der dazugehörige Benutzer den Wunsch angibt, Benachrichtigungen gemäß einem bestimmten Zeitplan zu empfangen, wie zum Beispiel eine gewünschte Häufigkeit von Benachrichtigungen, kann die Benachrichtigung auf einen späteren Zeitpunkt verschoben werden, um diesen Zeitplan einzuhalten. In diesem Fall kann die Benachrichtigung im Benutzerdatensatz des Benutzers als ausstehende Benachrichtigung gespeichert werden. Ferner können in diesem Fall mehrere Benachrichtigungen für einen einzelnen Benutzer verknüpft und zusammen als gemeinsame Benachrichtigung zu einem Zeitpunkt gesendet werden, der dem Zeitplan entspricht. Es kann jedoch Fälle geben, in denen der Inhaltsanbieter den Zeitplan eines Benutzers zum Empfangen von Benachrichtigungen überschreiben möchte, beispielsweise aufgrund von Dringlichkeit in Bezug auf den neuen Inhalt. In diesem Fall kann der Inhaltsanbieter in der NaaS-Erweiterung angeben, dass der neue Inhalt dringend ist, und Benachrichtigungen über den neuen Inhalt können daher ohne Verzögerung aufgrund von Benutzerzeitplänen gesendet werden.
-
Das Verfahren 200 kann dann zum Block 240 zurückkehren, wo die Überwachungseinrichtung 140 weiterhin den RSS-Feed überwachen kann.
-
In einigen Ausführungsformen kann das Benachrichtigungssystem 100 die Zusammenarbeit von Interessenkategorien, Grammatiken, Schlüsselwörtern oder anderen Aspekten über verschiedene Anbieter hinweg ermöglichen. Zum Veranschaulichen dieses Konzepts handelt es sich bei 4 um eine weitere Darstellung des Benachrichtigungssystems 100 gemäß einigen Ausführungsformen dieser Offenbarung.
-
Die verschiedenen Inhaltsanbieter können an Synonymen für ihre Interessenkategorien zusammenarbeiten. Beispielsweise und nicht im einschränkenden Sinn kann ein Online-Wahlsystem verwendet werden, bei dem Inhaltsanbieter eine Interessenkategorienzugehörigkeit einreichen können (d.h. fordern, dass eine bestimmte Interessenkategorie als eine oder mehrere andere Interessenkategorien angesehen wird, die bereits als Synonyme etabliert sind) für das Abstimmen durch andere Inhaltsanbieter. Wenn genügend Ja-Stimmen empfangen werden, kann die fragliche Interessenkategorie einem Datenwörterbuch 410 hinzugefügt werden, in dem synonyme Interessenkategorien zusammen gruppiert sind und dadurch zum Zwecke der Benachrichtigung von Benutzern als gleich betrachtet werden. Wenn die Überwachungseinrichtung 140 einen neuen Inhalt von einem Inhaltsanbieter erkennt und dieser neue Inhalt einer oder mehreren Interessenkategorien zugehörig ist, die durch den Inhaltsanbieter spezifiziert werden, kann die Benachrichtigungseinrichtung 150 das Datenwörterbuch 410 nach synonymen Interessenkategorien durchsuchen. Wenn eine oder mehrere Interessenkategorien erkannt werden, können diese ebenso wie die spezifizierten Interessenkategorien für den neuen Inhalt verwendet werden, um dazugehörige Benutzer zu kennzeichnen. Somit können sogar Benutzer, die den Inhaltsanbieter nicht abonniert haben, Benachrichtigungen bezüglich eines neuen Inhalts des Inhaltsanbieters erhalten, wenn dieser neue Inhalt mindestens einer Interessenkategorie zugehörig ist, die außerdem mit einer von dem Benutzer für einen anderen Inhaltsanbieter ausgewählten Interessenkategorie übereinstimmt. In einigen Ausführungsformen kann dieses Merkmal lediglich auf Benutzer angewendet werden, die angegeben haben, dass sie gerne teilnehmen würden, beispielsweise durch Auswählen einer Option „Zusammenarbeit mit anderen Quellen zulassen“ oder dergleichen an dem Interessen-Widget 300.
-
Ausführungsformen des Benachrichtigungssystems 100 müssen nicht auf Überwachen und Benachrichtigen auf der Grundlage des Inhalts der Website beschränkt sein. Vielmehr können beispielsweise einige Ausführungsformen Social-Media-Kanäle überwachen und Benutzer auf der Grundlage von Inhaltsänderungen in diesen Social-Media-Kanälen benachrichtigen. Angesichts der Popularität von sozialen Medien können solche Ausführungsformen insofern vorteilhaft sein, als sie Benachrichtigungen von Daten ermöglichen, die über soziale Medienkanäle bereitgestellt werden. Viele Unternehmen posten häufiger auf ihren Social-Media-Kanälen als sie ihre Websites aktualisieren. Aufgrund der einfachen Veröffentlichung in sozialen Medien kann ein Inhaltsanbieter des Weiteren neue Inhalte in sozialen Medien bereitstellen, bevor er dieselben neue Inhalte auf seiner Website bereitstellt, und in diesem Fall können Benachrichtigungen auf der Grundlage von neuen Inhalten sozialer Medien Informationen für Benutzer schneller bereitstellen.
-
5 ist eine nochmals weitere Darstellung des Benachrichtigungssystems 100 gemäß einigen Ausführungsformen dieser Offenbarung. Wie gezeigt, kann das Benachrichtigungssystem 100 ferner eine soziale Überwachungseinrichtung 510 enthalten, die einen oder mehrere Kanäle sozialer Medien 520 auf Inhaltsänderungen überwachen kann.
-
6 ist ein Ablaufplan eines Verfahrens 600 zum Benachrichtigen von Benutzern von Social-Media-Aktivitäten gemäß einigen Ausführungsformen dieser Offenbarung. In einigen Ausführungsformen kann ein Inhaltsanbieter bereits beim Benachrichtigungssystem 100 registriert sein, wenn dieses Verfahren 600 beginnt, und kann bereits im Schemaspeicher 170 dargestellt sein. Mit anderen Worten, das Benachrichtigungssystem 100 kann bereits die Interessenkategorien und Benachrichtigungsoptionen des Inhaltsanbieters kennen. Ferner kann dieses Verfahren 600 zusätzlich zu dem oben beschriebenen Verfahren 200 zum Bereitstellen von Benachrichtigungen auf der Grundlage von Änderungen an anderen Inhaltsquellen 180, wie zum Beispiel Websites, hinzugefügt werden. Somit kann, wie oben erläutert, die NaaS-Erweiterung in einem RSS-Feed bereitgestellt und durch das Benachrichtigungssystem 100 überwacht werden, um sicherzustellen, dass das Schema für den Inhaltsanbieter, das in dem Schemaspeicher 170 gespeichert ist, aktuell bleibt.
-
Im Block 610 kann die soziale Überwachungseinrichtung 510 einen oder mehrere Kanäle sozialer Medien 520 des Inhaltsanbieters überwachen. Diese Überwachung kann fortgesetzt werden, bis eine Inhaltsänderung, z.B. neue Inhalte sozialer Medien, festgestellt wird.
-
Im Block 620 kann der Inhaltsanbieter Inhalte sozialer Medien versenden. Der Inhalt der sozialen Medien kann einen oder mehrere einzelne Beiträge enthalten, die zusammen als ein einzelner Inhalt angesehen werden. Wenn zum Beispiel der Inhalt der sozialen Medien auf Twitter gepostet wird, wobei jeder Tweet auf 140 Zeichen begrenzt ist, kann es sich bei dem Inhalt der sozialen Medien um eine Reihe von Tweets handeln, die so beschriftet sind, dass sie einen einzigen Inhalt sozialer Medien darstellen. Zum Beispiel, und nicht einschränkend, kann ein solcher Tweet eine Bezeichnung wie „(1/3)“ enthalten, dass der Tweet der erste von drei Tweets ist, die einen einzigen Inhalt sozialer Medien bilden. In dem Inhalt sozialer Medien oder in Verbindung mit diesem kann der Inhaltsanbieter eine oder mehrere Interessenkategorien angeben, die zu den Interessenkategorien gehören, die in dem Schema definiert sind, das dem Inhaltsanbieter zugehörig ist.
-
Im Block 630 können neue Inhalte sozialer Medien durch die soziale Überwachungseinrichtung 510 erkannt werden. Im Block 640 kann die soziale Überwachungseinrichtung 510 in den neuen Inhalten sozialer Medien eine oder mehrere Interessenkategorien kennzeichnen, die den neuen Inhalten sozialer Medien zugehörig sind. Im Block 650 kann das Benachrichtigungssystem 100 Benutzer kennzeichnen, die den Interessenkategorien der neuen Inhalte sozialer Medien entsprechen. Zu diesem Zweck kann die Benachrichtigungseinrichtung 150 die Interessenkategorien der neuen Inhalte sozialer Medien mit den Interessenkategorien verschiedener Benutzer vergleichen, die in dem Benutzerspeicher 160 dargestellt sind, und kann jeden Benutzer als einen dazugehörigen Benutzer kennzeichnen, der Interesse an mindestens einer Interessenkategorie der neuen Inhalten sozialer Medien hat.
-
Im Block 660 kann die Benachrichtigungseinrichtung 150 für jeden dazugehörigen Benutzer mindestens eine Benachrichtigungsoption auswählen, die zuvor durch den Benutzer durch das Interessen-Widget 300 oder durch andere Mittel aus den Benachrichtigungsoptionen ausgewählt wurden. Im Block 670 kann die Benachrichtigungseinrichtung 150 an jeden dazugehörigen Benutzer eine Benachrichtigung über die neuen Inhalte sozialer Medien unter Verwendung der ausgewählten Benachrichtigungsoption für diesen dazugehörigen Benutzer senden. In einigen Ausführungsformen, beispielsweise wenn der dazugehörige Benutzer den Wunsch angibt, Benachrichtigungen gemäß einem bestimmten Zeitplan oder einer bestimmten Häufigkeit zu empfangen, kann die Benachrichtigung auf einen späteren Zeitpunkt verschoben werden, um diesem Zeitplan oder dieser Häufigkeit zu entsprechen. Ferner können in diesem Fall mehrere Benachrichtigungen für einen einzelnen Benutzer verknüpft und zusammen als eine gemeinsame Benachrichtigung zu einem Zeitpunkt gesendet werden, der dem Zeitplan oder der Häufigkeit entspricht.
-
Das Verfahren 600 kann dann zum Block 610 zurückkehren, wo die soziale Überwachungseinrichtung 510 die Überwachung der Kanäle sozialer Medien fortsetzen kann.
-
7 veranschaulicht eine Blockdarstellung eines Computersystems 700 zum Verwenden beim Implementieren eines Benachrichtigungssystems 100 oder eines Verfahrens gemäß einigen Ausführungsformen. Die hierin beschriebenen Benachrichtigungssysteme 100 und Verfahren können in Hardware, Software (z.B. Firmware) oder einer Kombination davon implementiert sein 420. In einigen Ausführungsformen können die beschriebenen Verfahren zumindest teilweise in Hardware implementiert sein und können Teil des Mikroprozessors eines speziellen oder universellen Computersystems 700 sein, wie etwa eines Personal Computers, einer Workstation, eines Minicomputers oder eines Mainframe-Computers. Zum Beispiel können der Einstiegsdienst 110, der Produktionsdienst 120, die Überwachungseinrichtung 140 und die Benachrichtigungseinrichtung 150 auf einem oder mehreren Computersystemen 700 implementiert sein.
-
Wie in 7 gezeigt, enthält das Computersystem 700 in einigen Ausführungsformen einen Prozessor 705, einen Speicher 710, der mit einem Speicher-Controller 715 verbunden ist, und eine oder mehrere Eingabeeinheiten 745 und/oder Ausgabeeinheiten 740 wie beispielsweise periphere Einheiten, die zum Zweck des Datenaustausches über einen lokalen E/A-Controller 735 angeschlossen sind. Diese Einheiten 740 und 745 können zum Beispiel einen Drucker, einen Scanner, ein Mikrofon und dergleichen enthalten. Eingabeeinheiten wie eine herkömmliche Tastatur 750 und Maus 755 können mit dem E/A-Controller 735 verbunden sein. Bei dem E/A-Controller 735 kann es sich beispielsweise um einen oder mehrere Busse oder andere leitungsgestützte oder drahtlose Verbindungen handeln, die in der Technik bekannt sind. Der E/A-Controller 735 kann zusätzliche Elemente enthalten, die der Einfachheit halber weggelassen sind, wie z.B. Controller, Puffer (Cachespeicher), Treiber, Verstärker und Empfänger, um Datenübertragungen zu ermöglichen.
-
Die E/A-Einheiten 740, 745 können ferner Einheiten enthalten, die sowohl Eingaben als auch Ausgaben übertragen, beispielsweise Platten- und Bandspeicher, eine Netzwerkschnittstellenkarte (NIC) oder Modulator/Demodulator (für den Zugriff auf andere Dateien, Einheiten, Systeme oder ein Netzwerk), einen Hochfrequenz-(HF-) oder anderen Transceiver, eine Telefonschnittstelle, eine Brücke, einen Router und dergleichen.
-
Bei dem Prozessor 705 handelt es sich um eine Hardwareeinheit zum Ausführen von Hardware-Anweisungen oder Software, insbesondere jene, die im Speicher 710 gespeichert sind. Der Prozessor 705 kann ein kundenspezifischer oder handelsüblicher Prozessor sein, eine Zentraleinheit (CPU), ein Hilfsprozessor unter mehreren Prozessoren, die dem Computersystem 700 zugehörig sind, ein Halbleiter-Mikroprozessor (in Form eines Mikrochips oder Chipsatzes), ein Makroprozessor oder eine andere Einheit zum Ausführen von Anweisungen. Der Prozessor 705 enthält einen Cachespeicher 770, der einen Befehlscachespeicher zum Beschleunigen des Abrufs ausführbarer Anweisungen, einen Datencachespeicher zum Beschleunigen des Datenabrufs und -speicherns und einen Übersetzungsnachschlagepuffer (TLB), der zum Beschleunigen der Übersetzung von virtueller in physische Adresse für ausführbare Anweisungen und Daten verwendet wird, enthalten kann, ist aber nicht darauf beschränkt. Der Cachespeicher 770 kann als eine Hierarchie von mehreren Cachespeicher-Ebenen (L1, L2 usw.) organisiert sein.
-
Der Speicher 710 kann ein flüchtiges Speicherelement (beispielsweise einen Direktzugriffsspeicher, RAM, wie DRAM, SRAM, SDRAM, usw.) und ein nichtflüchtiges Speicherelement (z.B. ROM, löschbare programmierbare Festwertspeicher (EPROM), einen elektronisch löschbaren programmierbaren Festwertspeicher (EEPROM), einen programmierbaren Festwertspeicher (PROM), ein Band, einen Compact-Disc-Festwertspeicher (CD-ROM), eine Platte, eine Diskette, Patrone, Kassette oder dergleichen usw.) oder Kombinationen der Genannten enthalten. Darüber hinaus kann der Speicher 710 elektronische, magnetische, optische oder andere Arten von Speichermedien beinhalten. Es sei angemerkt, dass der Speicher 710 eine verteilte Architektur haben kann, bei der verschiedene Komponenten voneinander entfernt angeordnet sind, auf die jedoch durch den Prozessor 705 zugegriffen werden kann.
-
Die Anweisungen im Speicher 710 können ein oder mehrere separate Programme enthalten, von denen jedes eine geordnete Auflistung von ausführbaren Anweisungen zum Implementieren logischer Funktionen aufweist. In dem Beispiel von 7 enthalten die Anweisungen in dem Speicher 710 ein geeignetes Betriebssystem (BS) 711. Das Betriebssystem 711 kann im Wesentlichen die Ausführung anderer Computerprogramme steuern und stellt Ablaufsteuerung, Eingabe/Ausgabe-Steuerung, Datei- und Datenverwaltung, Speicherverwaltung und Datenübertragungssteuerung sowie zugehörige Dienste bereit.
-
Zusätzliche Daten, darunter beispielsweise Anweisungen für den Prozessor 705 oder andere abrufbare Informationen können im Speicher 720 gespeichert werden, bei dem es sich um eine Speichereinheit wie beispielsweise ein Festplattenlaufwerk oder ein Halbleiterlaufwerk handeln kann. Die gespeicherten Anweisungen in dem Speicher 710 oder in der Speichereinrichtung 720 können solche enthalten, die es dem Prozessor ermöglichen, einen oder mehrere Aspekte der Benachrichtigungssysteme 100 und der Verfahren dieser Offenbarung auszuführen.
-
Das Computersystem 700 kann ferner einen Anzeige-Controller 725 enthalten, der mit einer Anzeige 730 verbunden ist. In einigen Ausführungsformen kann das Computersystem 700 ferner eine Netzwerkschnittstelle 760 zum Verbinden mit einem Netzwerk 765 enthalten. Bei dem Netzwerk 765 kann es sich um ein auf einem Internetprotokoll (IP) beruhendes Netzwerk für den Datenaustausch zwischen dem Computersystem 700 und einem externen Server, Client und dergleichen über eine Breitbandverbindung handeln. Das Netzwerk 765 überträgt und empfängt Daten zwischen dem Computersystem 700 und externen Systemen. In einigen Ausführungsformen kann es sich bei dem Netzwerk 765 um ein verwaltetes IP-Netzwerk handeln, das von einem Dienstanbieter geführt wird. Das Netzwerk 765 kann drahtlos implementiert werden, z.B. unter Verwendung von Drahtlos-Protokollen und Technologien, wie etwa WiFi, WiMax usw. Das Netzwerk 765 kann außerdem ein paketvermitteltes Netzwerk wie etwa ein Lokalbereichsnetzwerk, Weitbereichsnetzwerk, Metropolitan-Netzwerk, das Internet oder eine andere ähnliche Art von Netzwerkumgebung sein. Das Netzwerk 765 kann ein festes drahtloses Netzwerk, ein drahtloses lokales Netzwerk (LAN), ein drahtloses Weitbereichsnetzwerk (WAN), ein Personal Area Network (PAN), ein virtuelles privates Netzwerk (VPN), ein Intranet oder ein anderes geeignetes Netzwerksystem sein und kann Ausrüstungen zum Empfangen und Übertragen von Signalen enthalten.
-
Benachrichtigungssysteme und Verfahren gemäß dieser Offenbarung können vollständig oder teilweise in Computerprogrammprodukten oder in Computersystemen 700, wie etwa dem in 7 dargestellten, verkörpert sein.
-
Es sei von vornherein klargestellt, dass das Umsetzen der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing enthält. Stattdessen können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen Art von jetzt bekannter oder später erfundener Datenverarbeitungsumgebung umgesetzt werden.
-
Cloud-Computing ist ein Servicebereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Service schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften enthalten, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle.
-
Bei den Eigenschaften handelt es sich um die Folgenden:
- On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
- Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
- Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
- Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
- Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Der Ressourcen-Verbrauch kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
-
Bei den Dienstmodellen handelt es sich um die Folgenden:
- Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
- Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
- Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
-
Bei den Einsatzmodellen handelt es sich um die Folgenden:
- Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
- Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Mission, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann in den eigenen Räumen oder fremden Räumen stehen.
- Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
- Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
-
Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Herzen von Cloud-Computing liegt eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten aufweist.
-
Unter Bezugnahme auf 8 ist die veranschaulichende Cloud-Computing-Umgebung 50 abgebildet. Wie gezeigt ist, weist die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10 auf, mit denen von Cloud-Benutzern verwendete lokale Datenverarbeitungseinheiten wie der elektronische Assistent (PDA, personal digital assistant) oder das Mobiltelefon 54A, der Desktop-Computer 54B, der Laptop-Computer 54C und/oder das Automobil-Computer-System 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, Benutzergemeinschafts-, öffentliche oder hybride Clouds gruppiert werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 8 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
-
Unter Bezugnahme auf 9 wird ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 50 ( 8) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 9 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt.
-
Eine Hardware- und Software-Schicht 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe-Computer 61; auf der RISC- (Reduced Instruction Set Computer) Architektur beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen beinhalten Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und eine Datenbank-Software 68.
-
Die Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71, virtueller Speicher 72, virtuelle Netzwerke 73, darunter virtuelle private Netzwerke, virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
-
In einem Beispiel kann die Verwaltungsschicht 80 die nachfolgend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 81 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 82 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen aufweisen. Die Sicherheit stellt die Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Nutzern und Systemadministratoren den Zugang zu der Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 84 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (SLA, Service Level Agreement) 85 stellt die Anordnung vorab und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einem SLA bereit.
-
Eine Arbeitslastschicht 90 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 93; Datenanalytikverarbeitung 94; Transaktionsverarbeitung 95; und Überwachung von Inhaltsquellen 96 durch Lesen von NaaS-Erweiterungen von RSS-Feeds.
-
Zu technischen Effekte und Vorteilen von einigen Ausführungsformen gehört die Fähigkeit, einen oder mehrere Datenströme zu überwachen wie RSS-Feeds oder Kanäle sozialer Medien, um neue Inhalte in diesen Datenströmen zu erkennen. Des Weiteren können in einigen Ausführungsformen Benachrichtigungen über die neuen Inhalte über vorab ausgewählte Datenübertragungskanäle auf der Grundlage der zuvor ausgewählten Interessen und Benachrichtigungseinstellungen der Nutzer gesendet werden. Folglich können Inhaltsanbieter ihre eigenen Kategorien beibehalten, die dem Benachrichtigungssystem über ihre RSS-Feeds mitgeteilt werden können.
-
Die hier verwendete Terminologie dient lediglich dem Zweck des Beschreibens bestimmter Ausführungsformen und soll die Erfindung nicht beschränken. Wie hierin verwendet, sollen die Singularformen „ein“ und „der/die/das“ auch die Pluralformen einschließen, sofern im Kontext nicht ausdrücklich anders festgelegt. Es ist ferner klar, dass die Ausdrücke „umfassen“ und/oder „umfassend“, bei Verwendung in dieser Beschreibung das Vorhandensein von angegebenen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen und/oder Komponenten spezifizieren, jedoch nicht das Vorhandensein oder Hinzufügen eines oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon ausschließen.
-
Die entsprechenden Strukturen, Materialien, Wirkungen und Ersetzungen aller Mittel oder Schritte plus Funktionselemente in den nachfolgenden Ansprüchen sollen jede Struktur, jedes Material oder jede Wirkung zum Ausführen der Funktion in Kombination mit anderen beanspruchten Elementen, die speziell beansprucht sind, enthalten. Die Beschreibung von verschiedenen Ausführungsformen der vorliegenden Erfindung wurde für den Zweck der Veranschaulichung und Beschreibung präsentiert, es ist jedoch nicht vorgesehen, dass sie für die Erfindung in der offenbarten Form erschöpfend oder einschränkend ist. Viele Modifikationen und Variationen werden für einen Fachmann offensichtlich sein, ohne vom Umfang und Erfindungsgedanken der vorliegenden Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der vorliegenden Erfindung und die praktische Anwendung am besten zu erklären und um andere Fachleute zu befähigen, die vorliegende Erfindung zu verstehen, da verschiedene Ausführungsformen mit verschiedenen Modifikationen für den bestimmten vorgesehen Verwendungszweck geeignet sind.
-
Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder Medien) enthalten, auf dem sich durch einen Computer lesbare Programmanweisungen befinden, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
-
Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine materielle Einheit handeln, die Anweisungen zum Verwenden durch eine Anweisungsausführungseinheit halten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich beispielsweise um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination der Vorhergehenden handeln, ist jedoch nicht darauf beschränkt. Eine nicht erschöpfende Liste von spezielleren Beispielen des durch einen Computer lesbaren Speichermediums enthält Folgendes: eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren programmierbaren Festwertspeicher (EPROM oder Flash-Speicher), einen statischen Direktzugriffsspeicher (SRAM), einen tragbaren Compactdisk-Festwertspeicher (CD-ROM), eine digitale Versatile-Disk (DVD), einen Speicherstick, eine Diskette (Floppy Disk), eine mechanisch codierte Einheit wie beispielsweise Lochkarten oder erhabene Strukturen in einer Nut, in denen Anweisungen aufgezeichnet sind, oder jede geeignete Kombination des Vorhergehenden. Ein hier verwendetes durch einen Computer lesbares Speichermedium sollte nicht so ausgelegt werden, dass es sich dabei per se um vergängliche Signale handelt wie beispielsweise Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z.B. Lichtimpulse, die ein Lichtwellenleiterkabel durchlaufen) oder elektrische Signale, die durch eine Leitung übertragen werden.
-
Durch einen Computer lesbare Programmanweisungen, die hier beschrieben werden, können von einem durch einen Computer lesbaren Speichermedium zu betreffenden Datenverarbeitungs/Verarbeitungs-Einheiten oder über ein Netzwerk, z.B. das Internet, ein Lokalbereichsnetz, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk zu einem externen Computer oder einer externen Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupfer-Übertragungskabel, Lichtwellenleiter, drahtlose Übertragungen, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerk-Adapterkarte oder eine Netzwerk-Schnittstelle in jeder Datenverarbeitungs/Verarbeitungs-Einheit empfängt durch einen Computer lesbare Programmanweisungen von dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zum Speichern in einem durch einen Computer lesbaren Speichermedium in der betreffenden Datenverarbeitungs/Verarbeitungs-Einheit weiter.
-
Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Befehle, Befehle mit Befehlssatz-Architektur (ISA), Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, Zustandseinstellungsdaten oder Quellencode bzw. Objektcode handeln, die in jeder Kombination aus einer oder mehreren Programmiersprachen geschrieben sind, darunter eine objektorientierte Programmiersprache wie Smalltalk, C++ oder dergleichen und herkömmliche prozedurale Programmiersprachen wie etwa die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können nur auf dem Computer eines Benutzers, teilweise auf dem Computer eines Benutzers, als ein eigenständiges Software-Paket, teilweise auf dem Computer eines Benutzers und teilweise auf einem fernen Computer oder nur auf dem fernen Computer oder Server ausgeführt werden. In dem zuletzt genannten Szenario kann der ferne Computer mit dem Computer des Benutzers durch jeden Netzwerktyp verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer (z.B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden. Bei einigen Ausführungsformen können elektronische Schaltungsanordnungen, darunter beispielsweise eine programmierbare logische Schaltungsanordnung, vor Ort programmierbare Gate-Arrays (FPGA) oder programmierbare Logik-Arrays (PLA), die durch einen Computer lesbare Programmanweisungen ausführen, indem Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen genutzt werden, um die elektronische Schaltungsanordnung zu personalisieren, um Aspekte der vorliegenden Erfindung auszuführen.
-
Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Ablaufplan-Darstellungen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es ist klar, dass jeder Block der Ablaufplan-Darstellungen und/oder Blockschaltbilder und Kombinationen von Blöcken in den Ablaufplan-Darstellungen und/oder Blockschaltbildern durch einen Computer lesbare Programmanweisungen umgesetzt werden können.
-
Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu bilden, so dass Anweisungen, die über den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Umsetzen der Funktionen/Wirkungen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds spezifiziert sind, erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können außerdem in einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten anweisen kann, in einer bestimmten Weise zu funktionieren, so dass das durch einen Computer lesbare Speichermedium mit darin gespeicherten Anweisungen einen Herstellungsgegenstand aufweist, der Anweisungen enthält, die Aspekte der Funktion/Wirkung umsetzen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds spezifiziert sind.
-
Die durch einen Computer lesbaren Programmanweisungen können außerdem in einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um eine Reihe von Operationsschritten zu bewirken, die auf dem Computer, der anderen programmierbaren Datenverarbeitungsvorrichtung oder der anderen Einheit ausgeführt werden sollen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, so dass die Befehle, die auf dem Computer, der anderen programmierbaren Vorrichtung oder der anderen Einheit ausgeführt werden, die Funktionen/Wirkungen, die in dem Block oder Blöcken des Ablaufplans und/oder Blockschaltbilds spezifiziert sind, umsetzen.
-
Der Ablaufplan und die Blockdarstellungen in den Figuren veranschaulichen die Architektur, Funktionalität und Operation von möglichen Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedener Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in dem Ablaufplan oder in Blockdarstellungen ein Modul, Segment oder Abschnitt von Anweisungen repräsentieren, der einen oder mehrere ausführbare Anweisungen zum Umsetzen der spezifizierten logischen Funktion(en) aufweist. Bei einigen alternativen Umsetzungen können die in dem Block angegebenen Funktionen möglicherweise nicht in der in den Figuren angegebenen Reihenfolge auftreten. Zum Beispiel können zwei Blöcke, die nacheinander gezeigt sind, tatsächlich im Wesentlichen gleichzeitig ausgeführt werden oder die Blöcke können gelegentlich in Abhängigkeit von der beteiligten Funktionalität in der umgekehrten Reihenfolge ausgeführt werden. Es wird außerdem angemerkt, dass jeder Block in den Blockdarstellungen und/oder Ablaufplan-Darstellungen und Kombinationen von Blöcken in den Blockdarstellungen und/oder der Ablaufplan-Darstellung durch Systeme, die auf spezieller Hardware beruhen, die die spezifizierten Funktionen oder Wirkungen ausführen, oder Kombinationen aus spezieller Hardware und Computerbefehlen umgesetzt werden können.
-
Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden für Zwecke der Veranschaulichung dargestellt, sie sollen jedoch nicht erschöpfend oder auf die offenbarten Ausführungsformen beschränkt sein. Viele Modifikationen und Variationen werden für Fachleute erkennbar sein, ohne vom inhaltlichen Umfang und gedanklichen Wesensgehalt der beschriebenen Ausführungsform abzuweichen. Die hier verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber vorhandenen Technologien am besten zu erläutern oder um Fachleute zu befähigen, die offenbarten Ausführungsformen zu verstehen.