DE19835092C2 - Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems - Google Patents

Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems

Info

Publication number
DE19835092C2
DE19835092C2 DE1998135092 DE19835092A DE19835092C2 DE 19835092 C2 DE19835092 C2 DE 19835092C2 DE 1998135092 DE1998135092 DE 1998135092 DE 19835092 A DE19835092 A DE 19835092A DE 19835092 C2 DE19835092 C2 DE 19835092C2
Authority
DE
Germany
Prior art keywords
block
data
notification
message
person
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE1998135092
Other languages
English (en)
Other versions
DE19835092A1 (de
Inventor
Kazim Karadag
Christian-Andre Richter
Fuat Oezdemir
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RICHTER CHRISTIAN ANDRE
Original Assignee
RICHTER CHRISTIAN ANDRE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by RICHTER CHRISTIAN ANDRE filed Critical RICHTER CHRISTIAN ANDRE
Priority to DE1998135092 priority Critical patent/DE19835092C2/de
Priority to DE29902068U priority patent/DE29902068U1/de
Publication of DE19835092A1 publication Critical patent/DE19835092A1/de
Application granted granted Critical
Publication of DE19835092C2 publication Critical patent/DE19835092C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/16Coin-freed apparatus for hiring articles; Coin-freed facilities or services for devices exhibiting advertisements, announcements, pictures or the like

Description

Die Erfindung betrifft ein Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems, insbesondere zur Vermittlung von Personenkontakten.
Es existieren unterschiedliche Arten von Vermittlungssystemen für Personen.
Die erste Art ist die konventionelle, durch Partnervermittlungsagenturen betriebene Vermittlung. Diese erheben, unter anderem bedingt durch den personellen Aufwand, eine hohe Bearbeitungsgebühr. Ein Kunde dieser Agentur muß mit hohen Investitionen in Bezug auf Zeit und Emotionen rechnen. Dies resultiert aus der hohen psychologischen Hemmschwelle, der ein Kontaktsuchender ausgesetzt ist, da dieser einen weiten Weg bis in die Agentur antreten muß und zudem, aus seiner Sicht, von dem Agenturpersonal als gehemmt und kontaktarm eingestuft wird. Weiterhin ist der Zeitfaktor als hinderlich anzusehen, da sich alle kontaktsuchenden Personen einer zeitaufwendigen Befragungsprozedur unterziehen müssen. Besonders erschwerend kommen die Öffnungszeiten der Agenturen hinzu, die in der Regel mit den Arbeitszeiten der Kontaktsuchenden kollidieren, so daß die Kontaktsuchenden einen Urlaubstag für den Agenturbesuch aufwenden müssen. Als fatale Folge der aufgeführten Erschwernisse reduziert sich die Zahl den Personen, die sich in die Liste einer Agentur aufnehmen lassen und damit automatisch auch die Wahrscheinlichkeit, seinen Idealpartner zu treffen.
Die zweite Art ist die Suche von Partnern mit Hilfe von speziellen Internet-Seiten. Die Suche mit Hilfe des Internets ist aus drei Gründen problematisch. Der erste Grund betrifft die das Internet nutzende Personengruppe, die sich immer noch in der Mehrheit aus technikorientierten männlichen Personen zusammensetzt, so daß sich schon im Vorfeld einer möglichen Partnervermittlung ein Ungleichgewicht ergibt, was eine erfolgreiche Vermittlung mit Hilfe von Internet-Seiten erschwert.
Der zweite Grund betrifft die Art der Darstellungsmittel der suchenden Personen. In der Regel ist die Darstellung auf eine textuelle Ebene begrenzt und bietet nur eine stark eingeschränkte Selbstdarstellung. Einige Anbieter von Internet-Seiten für Partnervermittlungen bieten daher die Möglichkeit an, digitalisierte Fotos als Dateien, zusätzlich zu der textuellen Ebene, zur Darstellung der eigenen Person zu verwenden. Da aber die Verbreitung von Scannern für den privaten Bedarf sehr gering ist und zudem ein passendes und aktuelles Foto der eigenen Person benötigt wird, ist hier der Aufwand als sehr hoch anzusehen. Die Überlegung, digitale Kameras zu verwenden, ist zwar möglich, wird aber aus Kostengründen in der Regel nicht wahrgenommen. Der dritte Grund ergibt sich aus den finanziellen Aufwendungen für eine geeignete Computerausstattung und den Internetzugang. Insgesamt ist also die Partnersuche via Internet sehr problematisch.
Eine dritte Art der Partnervermittlung geschieht durch computergesteuerte Automaten (DE-GM 94 18 508.5), die in einer öffentlichen Zone aufgestellt sind und einer partnersuchenden Person die Möglichkeit bieten, eine Suchanzeige in den Automaten einzubringen oder bestehende Anzeigen einzusehen. Diese Automaten weisen einige sehr große Probleme für den Partnersuchenden auf. So ist das ständige wiederkehrende, zeitaufwendige und stressbehaftete Aufsuchen des Automaten notwendig, um abzufragen, ob sich schon ein Interessent auf die eigene Suchanzeige hin gemeldet hat. Da ein tägliches Abfragen in den seltensten Fällen praktikabel ist, werden viele Antworten, die in den Automaten eingegeben werden, bei der Abfrage, bedingt durch das mehrfache Antworten einer Person auf unterschiedliche Suchanzeigen, überholt sein und damit viele mögliche Kontakte verloren gehen.
Ein weiteres digitales Annociersystem ist in der DE-OS 196 29 852 beschrieben. Dieses digitale Annonciersystem umfaßt einen Terminal mit Ein- und - Ausgabeeinrichtung für Datensätze, eine Verbindung mit einem Server, die in bestimmten Zeitabständen aktiviert wird. Der Server oder die Terminals weisen einen Vergleicher auf, der die Datensätze des Nachfragers oder des Anbieters vergleicht und nach bestimmten Merkmalen filtert und/oder miteinander verknüpft und das Ergebnis des Vergleiches dem Nachfrager oder dem Anbieter am Terminal anzeigt. Der Nachteil dieses Systems besteht darin, daß auch hier der Nachfragende und/oder Anbieter über einen bestimmten Zeitraum eine aktive Position beziehen muß, indem er mit dem Automaten kommuniziert, sei es am Terminal oder auch Online am PC.
Der im Patentanspruch angegebenen Erfindung liegt die Aufgabenstellung zugrunde, ein Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems zu schaffen, das es partnersuchenden Personen ermöglicht, einfach und ohne großen Zeitaufwand einen Partner suchen zu können, wobei ein maximales Maß an Freiheit bei der Kontaktaufnahme besteht und die Anonymität solange gewahrt bleibt, wie die Kommunizierenden es wünschen.
Gelöst wird diese Aufgabe mit den kennzeichnenden Merkmalen des Anspruchs 1, vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche.
Gemäß der Erfindung sieht das Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems, bei dem Nachrichten in Form von Anzeigen und Suchfragen über einen Terminal in einen Rechner eingegeben, hier auf Passfähigkeit verglichen werden und abrufbar sind, vor, daß eine vom Rechner veranlasste automatische Benachrichtigung der Person, für die eine passfähige Nachricht in das Vermittlungssystem eingegangen ist, durch Senden einer Meldung des Rechners zu einer von dieser Person benannten Kommunikationseinrichtung erfolgt, die Meldung natürlich sprachlich codiert ist und/oder eine durch Sprachsynthese erzeugte natürlich sprachlich codierte Nachricht ist und die benachrichtigte Person zu einem von ihr zu bestimmenden Zeitpunkt über Fernabfrage die passfähige Nachricht abhören und/oder abrufen und/oder einsehen kann und dabei selbst adressierte Nachrichten eingeben kann.
Unter passfähig werden hierbei die Datenobjekte verstanden, die sich in bestimmter Relation (Beziehung) zu anderen Datenobjekten setzen lassen. Zur Erzeugung der Relationen, werden die in den Datenobjekten enthaltenen Daten und externe Vorgaben, mittels eines Datenbankmanagementsystems, in Beziehung, im Sinne einer Vermittlung, gesetzt. Die so ermittelten Relationen bzw. Datenobjekte werden dann von dem Vermittlungssystem weiterverarbeitet.
Ein großer Vorteil dieser Art des technischen Betriebes eines Vermittlungssystems besteht darin, daß die Partnersuche erheblich vereinfacht wird, da sich der Personenkreis durch die räumliche und zeitliche Entkopplung des Such- und Auswahlvorganges und sowie durch den vereinfachten Zugang erweitert und damit die Wahrscheinlichkeit steigt einen passenden Partner zu finden. Ein weiterer wichtiger Vorteil ist, daß das wiederholte Nachsehen, ob sich Personen für die eigene Person gemeldet haben, entfällt. Da das Vermittlungssystem automatisch eine Meldung an die gesuchte Person, im Falle einer Antwort auf die Suchanzeige der suchenden Person, auf elektronischem Wege sendet, wird viel Zeit gespart und werden mögliche Enttäuschungen vermieden. Weiterhin ist von Vorteil, daß die Person, die eine Suchanzeige in den Automaten eingebracht hat, nur ein Telefon im Zugriff zu haben braucht, um von dem Automaten eine natürlichsprachlich geformte Statusmeldung, bezüglich des Einganges einer Antwort in Bezug auf die eigene Suchanzeige, durch das Telefon zugesendet zu bekommen.
Das Vermittlungssystem schlägt einer partnersuchenden Person aus den Angaben zur eigenen Person und dem gewünschten Personenprofil, alle möglichen in Frage kommende Personen vor. So ist es nicht mehr notwendig, zeitaufwendig und fehleranfällig alle gespeicherten Suchanzeigen aufzurufen zu lassen, sondern es müssen nur die in Frage kommenden Suchanzeigen betrachtet werden.
Das Vermittlungssystem ermöglicht zudem schüchternen Personen eine erfolgreiche Darstellung ihrer eigenen Person, da sich diese ohne Zeitdruck durch die Angabe von individuell anonymisierten Daten zu ihrer Person in Form einer Nachricht in das Vermittlungssystem einbringen können. So entfällt die Möglichkeit, eine unhöfliche und selbstwertzerstörenden Ablehnung zu erhalten, die aus einer zu großen Nervosität resultiert.
Ebenso erhöht sich die Wahrscheinlichkeit eines Treffens mit einer antwortenden Person, da die eigene Reaktion unmittelbar nach der Benachrichtigung durch das Vermittlungssystem stattfinden kann und somit eine psychologisch unvorteilhafte Verzögerung vermieden wird.
Da das Vermittlungssystem, wie weiter hinten noch ausführlich gezeigt wird, nur einen minimalen personellen Aufwand für die Wartung benötigt, kann eine Vermittlung mit sehr geringen Kosten stattfinden.
In einer vorteilhaften Ausgestaltung sieht die Erfindung vor, daß nach der Ermittlung der Personen, für die eine passfähige Nachricht in das Vermittlungssystem eingegangen ist und vor dem Senden einer Meldung an die jeweils von diesen Personen benannten Kommunikationseinrichtung, eine Rückmeldung über diese Personen an den Terminal, bei dem die Nachrichteneingabe zur Vermittlung erfolgte oder einen bei der Nachrichteneingabe benannten, stattfindet. So ist es möglich, eine Zwischenauswahl vorzunehmen, einmal unter dem Gesichtspunkt subjektiv festgestellter fehlender Paßfähigkeit und auch wenn die Zahl der passfähigen Personen zu groß ist. Bei der Zwischenauswahl sieht die Erfindung vor, daß durch eine entsprechende Eingabe in den Terminal von diesem aus ein direktes Senden einer Meldung zu einer ausgewählten und von dieser Person benannten Kommunikationseinrichtung bewirkt wird.
Das Problem einer zu großen Anzahl ermittelter passfähiger Personen löst die Erfindung in einer weiteren Ausgestaltung dadurch, daß die Zahl der Personen, für die eine passfähige Nachricht in das Vermittlungssystem eingegangen ist, begrenzbar sein soll und beim Überschreiten der vorgegebenen Zahl rechentechnisch eine Verschärfung der mit der Nachrichteneingabe benannten Suchkriterien durch eine Wichtung erfolgt.
Die passfähige Zuordnung einer Nachricht zu bereits im Vermittlungssystem vorhandenen Nachrichten und damit die passfähige Zuordnung von Personen erfolgt erfindungsgemäß in einer bevorzugten Form unter Vergleich von Gesichtsmerkmals- Profilen. Hierbei wird an die Erkenntnisse der Sozialbiologie angeknüpft, daß sich Partner gegenseitig dann besonders attraktiv finden, wenn diese einen ähnlichen genetischen DNA-Code aufweisen, was aus Sicht der Sozialbiologie in der Weitergabe der eigenen, möglichst unveränderten Erbanlagen an die Kinder der jeweiligen Partner begründet ist. Die Studien zeigen auch, daß die Ehen dieser so zusammengefundenen Partner statistisch länger bestehen und subjektiv als harmonischer von den Partnern empfunden werden. Daher wertet auf Wunsch des Benutzers, das erfindungsgemäße Vermittlungssystem die Gesichtsgeometrien, Augengröße, Augenabstand, Nasenhöhe und Nasenbreite sowie Kopfkonturparameter und andere, relativ und absolut, aus. Dies wird von mit Hilfe von neuronalen Netzen für die Bildauswertung und neuronalen Netzen und/oder statistischen, heuristischen, neuronalen und/oder Fuzzy-Methoden für das Auffinden von geeigneten Partnern vorgenommen.
Eine andere Variante nutzt den Vergleich taktiler Eingabemerkmals-Profile. Der Ausgangspunkt dieser Einrichtung ist der gleiche wie bei den Gesichtsmerkmals-Profilen, mit dem Unterschied, daß bei der Erkennung und dem Vergleich von Gesichtsmerkmals- Profilen statische Merkmale bewertet werden und bei der Erkennung und dem Vergleich von taktilen Eingabemerkmals-Profilen dynamische Merkmale bewertet werden. Die Erkennung und der Vergleich taktiler Eingabemerkmals-Profile kann somit in Relation mit dem Temperament einer Person gesehen werden. Bei der Erkennung und dem Vergleich taktiler Eingabemerkmals-Profile auf Wunsch des Benutzers werden die Bedienaktionen des Benutzers über die primären Daten der Einhabe hinaus klassifiziert, jeweils mit Minimalwert, Maximalwert sowie gewichtetem Integral- und Differentialwert, nach der Gesamtdauer einer Bediensequenz, Zeiten zwischen komplexen Bediensequenzen, Zeiten zwischen einzelnen Bedienaktionen, der Dauer einer einzelnen Aktion (z. B. Dauer "Taste gedrückt"), der Dauer zwischen dem Darstellen einer einzelnen Eingabemöglichkeit (Dialogbedienelement) und der Reaktion, sowie der Dauer zwischen dem Darstellen mehrerer Eingabemöglichkeiten (Dialogbedienelemente) und der Reaktion darauf (Entscheidungsdauer). Diese Werte ergeben ein taktiles Eingabemerkmals-Profil, das mit Hilfe von neuronalen Netzen für die Bildauswertung und neuronalen Netzen und/oder statistischen, heuristischen, neuronalen und/oder Fuzzy-Methoden für das Auffinden von geeigneten Partnern genutzt wird.
Ebenso ist für die passfähige Zuordnung einer Nachricht zu einer Person der Vergleich von Sprachmerkmals-Profilen geeignet oder Kombinationen zwischen Gesichtsmerkmals-Profilen und/oder taktilen Eingabemerkmals-Profilen und/oder Sprachmerkmals-Profilen.
In der weiteren Ausgestaltung der Erfindung ist vorgesehen, daß die Person, die eine Anzeige, eine Antwort auf eine Anzeige oder eine Rückantwort in das Vermittlungssystem einbringt, neben einer Kommunikationseinrichtung wie Telefon, Pager, short-messages-servicefähiges Kommunikationsgerät, Faxgerät, elektronik­ mailfähiges Kommunikationsgeräte und allgemeine Sende- und Empfangsgeräte Randbedienungen zur Datenübermittlung benennen kann wie Datumsbereiche, Wochentage, Tageszeiten, Benachrichtigungspriorität bei Angabe von mehreren Benachrichtigungszielen, Benachrichtigungsintervall und Zeitlimit für einzelne Benachrichtigungsversuche. Das erhöht die Effektivität des Vermittlungssystems.
Bei einer erfindungsgemäßen Ausführung ist vorgesehen, daß die Person, die eine Nachricht in das Vermittlungssystem eingibt, bestimmt, ob
  • a) eine anonyme Meldung, d. h., es wird nur übermittelt, daß eine oder mehrere Nachrichten in das Vermittlungssystem eingegangen sind ohne Hinweis auf die Person die die Benachrichtigungsziele in das Vermittlungssystem eingebracht hat;
  • b) eine personenbezogene Meldungen, d. h., es wird übermittelt, daß eine oder mehrere Nachrichten in das Vermittlungssystem eingegangen sind mit einem frei bestimmbaren Hinweis auf die Person, die die Benachrichtigungsziele in das Vermittlungsautomatensystem eingebracht hat; oder
  • c) eine vollständige Meldung, d. h., es wird übermittelt, das eine oder mehrere Nachrichten in das Vermittlungssystem eingegangen sind und optional ein frei bestimmbarer Hinweis auf die Person, die die Benachrichtigungsziele in das Vermittlungssystem eingebracht hat sowie den Inhalt der Nachricht oder von Teilen der Nachricht;
übermittelt werden soll. Das sichert einen optimalen, vom Benutzer festlegbaren Datenschutz.
Insofern sieht die Erfindung auch vor, daß die Person, die eine Nachricht in das Vermittlungssystem eingibt, bestimmt, welche Nachrichten zu ihrer Person allen Benutzern des Vermittlungssystems zugänglich sein sollen. Ergänzend dazu sieht die Erfindung vor, daß die Nachrichten, die allen Benutzern zugänglich sind, durch eine Nachrichteneingabe der Benutzer ergänzbar sind und die ergänzenden Nachrichten rechentechnisch aufbereitet, vorzugsweise zusammengefaßt, und angezeigt werden und/oder durch jeden Benutzer abrufbar sind.
Damit werden die Voraussetzungen geschaffen, das Vermittlungssystem zusätzlich für unterschiedlichste Vergleiche unter Einbeziehung der Benutzer zu verwenden. Ein solcher Anwendungsfall ist z. B. die Auswahl des schönsten Gesichtes.
Erfindungsgemäß ist auch vorgesehen, daß die in den Terminal eingegebenen Nachrichten durch den Vermittlungsautomat-Local-Server und/oder den Vermittlungsautomat-Clients. die als primäre Ein- und Ausgabeterminals für den Benutzer des Vermittlungssystems vorgesehen sind, genutzt werden, um ein Persönlichkeitsprofil über die eingebende Person zu erstellen und auf dieser Grundlage im Vermittlungssystem gespeicherte Daten, vorzugsweise Produktinformationen, aufgerufen und der eingebenden Person noch während der Eingabe oder unmittelbar danach sprachlich und/oder visuell mitgeteilt werden. Die Erstellung des Persönlichkeitsprofils kann durch das Erfassen zusätzlicher biometrischer Daten ergänzt oder auch ausschließlich auf dieser Grundlage erstellt werden. Sinnvoll ist es bei dieser ergänzenden Nutzung des Vermittlungssystems, wenn der eingebenden Person mitgeteilte Produktinformationen durch diese dann abrufbar, auch in erweitertem Umfang, sind.
Der Zugriff auf das Vermittlungssystem über den Terminal erfolgt gemäß einer Ausführung der Erfindung über den Fingercode, der einmal in das System eingegeben wird.
Zwischen den Ebenen des Rechners und von und zu den Kommunikationsgeräten der Benutzer besteht für eine vorteilhafte Durchführung des Verfahrens eine asymmetrische Datenübertragungsverbindung, indem eine logische bidirektionale Datenübertragungsverbindung mit zwei separaten Datenübertragungsverbindungen mit jeweils unterschiedlichem Datentransportmedium und Datentransportprotokoll implementiert ist. Das hat den Vorteil, daß das Datentransportmedium und der Datentransportweg in technischer Weise an die asymmetrischen Datenmengen der einzelnen Transportrichtungen angepaßt werden kann, um die Betriebskosten des Vermittlungssystems durch Ausnutzung der unterschiedlichen Datenübertragungskosten der einzelnen Übertragungswege zu senken.
Die Datenübertragungsverbindungen werden in dynamische Weise in Abhängigkeit von Zeit, Zielort und der zu übertragenden Datenmenge so ausgewählt und aufgebaut, so daß die jeweils günstigste Übertragungsstrecke verwendet wird, die bestimmt wird durch die Datenübertragungskosten für die unmittelbar zu übertragenden Daten, wobei die Datenübertagungskosten sich errechnen aus den Tarifen der einzelnen Telekommunikationsanbieter, die ihre Tarife abhängig von Zeit, Ort, Zielort und der übertragenden Datenmenge gestalten, der aktuellen Zeit und der errechneten Zeit, die für die Übertragung der Daten benötigt wird, den Ort, den Zielort, der zu übertragenden Datenmenge sowie den Betriebskosten für die Übertragungseinrichtungen als auch den Rabatmöglichkeiten der einzelnen Telekommunikationspartner. Mit Hilfe von Tabellen, die für jeden der einzelnen Telekommunikationsanbieter die Tarife in Abhängigkeit von Zeit, Ort, Zielort, Datenmenge und Rabatmöglichkeiten enthalten sowie mit Parametern wie Betriebskosten für die einzelnen Übertragungseinrichtungen, der aktuellen Zeit, der errechneten Zeit, die für die Übertragung der Daten benötigt wird, Ort, Zielort und die zu übertragende Datenmenge wird die jeweils günstigste Übertragungsstrecke über statistische, heuristische, neuronale und/oder Fuzzy-Methoden bestimmt.
Die Datenübertragungsverbindungen können außer in statischer Weise, die Datenübertragungsverbindung wird permanent aufrechterhalten, auch in dynamischer Weise realisiert werden. Das bedeutet, die Datenübertragungsverbindung wird nur dann aufgebaut, wenn tatsächlich Daten transportiert werden müssen und nachdem die Daten übertragen wurden, wird die Datenübertragungsverbindung wieder abgebaut. Die dynamische Datenübertragungsverbindung kann durch eine Verzögerung des Datenverbindungsabbaus optimiert werden, so das bei zeitlich fast unmittelbar aufeinanderfolgenden Datentransport-Anforderungen ein unnötiges und verzögerndes sowie übertragungskostentechnisch ungünstiges Ab- und Wiederaufbauen einer Datenübertragungsverbindung entfällt.
Weiterhin sieht die Erfindung einen Datenabgleich innerhalb des computergesteuerten Vermittlungssystems mit einer dynamischen Anpassung vor, so daß nach dem Eingang einer großen Datenmenge die Zykluszeit für den Datenabgleichvorgang verringert wird und bei dem Eingang einer kleinen Datenmenge die Zykluszeit für den Datenabgleichvorgang erhöht wird.
Die Erfindung soll mit Hilfe der Zeichnung erläutert werden. Es zeigen:
Fig. 1a Terminal,
Fig. 1b Blockschaltbild der Hardware des Vermittlungssystems,
Fig. 2a Vermittlungsautomat-Remote-Server;
Fig. 2b Vermittlungsautomat-Local-Server,
Fig. 2c Vermittlungsautomat-Clients;
Fig. 3a schematische Darstellung des Vermittlungssystems,
Fig. 3b Ablauf einer typische Interaktion von Benutzern,
Fig. 4a Steuerungssoftware mit Abstraktionsschichten und Strukturen,
Fig. 4b-s Ablaufpläne,
Fig. 5a Ausführungsform einer Datenbank,
Fig. 6a Struktureller Aufbau einer Bedienoberfläche und
Fig. 6b-c Elemente der Bedienoberfläche.
Die Fig. 1a beschreibt eine mögliche Ausführungsform des Automaten. Das Gehäuse 1 nimmt die für den Automaten notwendigen Eingabe- und Ausgabeelemente auf. Der Bildschirm (TouchScreen, 3D-fähig: Darstellungsfähigkeit von räumlichen Objekten ohne spezielle Vorrichtung (Brille) auf Seiten des Betrachters) 2 dient für die visuelle Kommunikation mit dem Bediener, zur Navigation in den Dialogseiten und zur Auswahl und Eingabe von Daten. Die Digital-Stereo-Kamera 3 wird zur Aufnahme von Einzelbildern und Video-Sequenzen verwendet als auch für die Bildauswertung zur Personenmerkmalserkennung. Die Mikrofone 4a und 4b dienen für die Aufnahme von Audio-Daten, die bei der Aufnahme von Video-Sequenzen als auch für die Sprachauswertung verwendet werden. Die Beleuchtungseinrichtungen 5a und 5b werden zur Unterstützung der Digital-Stereo-Kamera 3 in dunklen Umgebungen verwendet. Die Lautsprecher 6a und 6b dienen zur Wiedergabe von Audio-Daten für die Wiedergabe von Video-Sequenzen, zur akustischen Untermalung und für akustische Rückmeldungen während eines Bedienvorganges. Die Barcode-Lese-und-Schreibvorrichtung 7 dient zur Personenidentifikation, mittels Barcode codierten Druckerzeugnissen. Die Chipkarten/Magnetkarten-Lese-und-Schreibe-Einrichtung 8 wird zum Lesen und Schreiben von Daten auf einer Chipkarte/Magnetkarte verwendet, dies können Daten zur Personenidentifikation als auch Daten zum Abrechnen von Geldeinheiten für die Leistungen des Automatensystems sein. Der Drucker 9 wird zum Drucken von Information für den Bediener des Automaten verwendet als auch zum Drucken von Barcode-Daten. Die Geldannahme-Einrichtung 10 dient zur Geldeinnahme. Die Tastatur 11 und die Zeige-Einrichtung (Cursortasten, Maus, Trackball, GlidePad, Spracherkennung - die mit graphischen Bedienelementen gekoppelt ist) 12 wird ebenso wie der Bildschirm (TouchScreen, 3D-fähig) 2 zur Navigation in den Dialogseiten und zur Auswahl und Eingabe von Daten verwendet. Die Allgemeine-Interaktions- Einrichtung 13 dient als erweiterbare Einrichtung für Interaktionen mit dem Benutzer, in einer bevorzugten Ausführung als Fingerlinien-Scanner für die Personenidentifikation. Die Kommunikationsverbindung 14 dient zum Senden und Empfangen von Daten zu anderen Automaten. Die Betriebsspannungsversorgungsverbindung 15 dient zur Versorgung der elektrischen Bauelemente des Automaten.
Fig. 1b beschreibt als Blockschaltbild den Hardwareaufbau des Vermittlungsautomaten, der einen Computer zur Ausführung aller Steuer- und Arbeitsvorgänge verwendet. Die zentrale Recheneinheit des Computers ist die CPU 16. Der CPU 16 ist zur schnelleren Ausführung, der auf ihr ablaufenden Steuerungs-Software, eine Cache-Speichereinheit 17 zugeordnet. Daten von und zur CPU 16 bzw. Cache-Speichereinheit 17 werden über den Systembus 18 an alle, an diesen Bus angekoppelten, Einheiten (2, 3, 7-12 und 19-27) versendet. Die RAM/ROM-Einheit 19 dient zur Aufnahme von temporär dynamischen Daten (RAM) als auch von dauerhaften statischen Daten (ROM). Für die dauerhafte Speicherung von großen Datenbeständen, wie sie die Datenbank (Fig. 5) benötigt, werden Massenspeicher (Harddisks) 20 verwendet. Zur Kommunikation mit peripheren Geräten wird ein Serial/Parallel-Interface 21 verwendet. Zur Navigation, Auswahl und Eingabe von Daten ist eine Tastatur 11 vorgesehen. Zum Verweis auf graphische Bedienoberfächenobjekte als auch zur Navigation, Auswahl und Eingabe von Daten wird ein Zeige-Einrichtung (Cursortasten, Maus, Trackball, GlidePad, Spracherkennung - die mit graphischen Bedienelementen gekoppelt ist) 12 als auch der Bildschirm (TouchScreen, 3D-fähig) 2 verwendet. Die Allgemeine-Interaktions-Einrichtung 13 dient als erweiterbare Einrichtung für Interaktionen mit dem Benutzer. Der Bildschirm (TouchScreen, 3D-fähig) 2 wird durch die Video-Einheit (Graphikkarte) 22 angesteuert. Die Audio-Sende-und-Empfangs-Einrichtung 23 dient in Verbindung mit den Mikrofonen 4a und 4b sowie den Lautsprechern 6a und 6b zur Aufnahme und Wiedergabe von Audio-Daten für Video-Sequenzen, Sprachauswertung, akustischen Rückmeldung von Bedienvorgängen und zur akustischen Untermalung. Die Digital- Stereo-Kamera 3 dient zum Aufnehmen von Bildern und Videos einer Person sowie von Photos, die Aufnahmen werden in Form von Binär-Werten dem Automaten zugeführt. Die Einrichtungen Fax/Modem-Sende-und-Empfangs-Einrichtung 24, ISDN-Sende-und- Empfangs-Einrichtung 25, Netzwerk-Sende-und-Empfangs-Einrichtung 26 und die Allgemeine-Kommunikations-Einrichtung 27 dienen zu Senden und Empfangen von Daten zu anderen sich im Automatensystem befindenden Automaten als auch zum Senden und Empfangen von Daten von und zu einem Telefon, Pager, SMS-fähigen Kommunikationsgerät und anderen Kommunikationsgeräten. Die Barcode-Lese-und- Schreibvorrichtung 7 dient zur Personenidentifikation, mittels Barcode codierten Druckerzeugnissen. Die Chipkarten/Magenetkarten-Lese-und-Schreib-Einrichtung 8 die zum Lesen und Schreiben von Daten auf einer Chipkarte/Magnetkarte, dies können Daten zur Personenidentifikation als auch Daten zum Abrechnen von Geldeinheiten für die Leistungen des Automatensystems sein. Der Drucker 9 wird zum Drucken von Information für den Bediener des Automaten verwendet als auch zum Drucken von Barcode-Daten. Die Geldannahme-Einheit 10 dient zur Geldeinnahme.
Erfindungsgemäß existieren in dem Vermittlungsautomatensystem drei Arten von Automaten, die alle auf eine gemeinsame Grundstruktur (Fig. 1b) aufbauen, den Vermittlungsautomat-Remote-Server (Fig. 2a), den Vermittlungsautomat-Local-Server (Fig. 2b) und den Vermittlungsautomat-Client (Fig. 2c). Die Fig. 3a, 3b und 6 beschreiben den Aufbau des Vermittlungsautomatensystems mit den drei Arten der Automaten sowie das Zusammenwirken der Automaten untereinander.
Fig. 2a beschreibt einen Vermittlungsautomat-Remote-Server. Dieser ist für die zentrale Datenhaltung in dem Vermittlungsautomatensystem zuständig und im besonderen für die automatische Benachrichtigung von Personen, für die eine Nachricht in das Automatensystem eingegangen ist sowie für Fernabfragen von Nachrichten, den Zugriff via Bildtelefon auf das Automatensystem und den Zugriff via Internet-WWW-Browser auf das Automatensystem.
Die Vermittlungsautomat-Remote-Server-Kern-Einheit 29 des Vermittlungsautomat- Remote-Server (Fig. 2a) steuert in Zusammenarbeit mit Vermittlungsautomat-Local-Servern (Fig. 2b) den Datenaustausch und Datenabgleich (Fig. 3a) zwischen dem Vermittlungsautomat-Remote-Server (Fig. 2a) und den ihm zugeordneten Vermittlungsautomat-Local-Servern (Fig. 2b).
Hierzu verwendet die Vermittlungsautomat-Remote-Server-Kern-Einheit 29 die Datenbank 33 mit der sie über die Datenfluß-Verbindung 45 kommuniziert sowie die Sende-und-Empfangs-Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß- Verbindungen 37, 42, 43 und 44 kommuniziert. Die Vermittlungsautomat-Remote- Server-Kern-Einheit 29 arbeitet unabhängig von den anderen Einheiten 28, 30, 31 und 32 im Sinne einer parallelen Abarbeitung mittels eigenständigen Programmfäden (Multithread-Verarbeitung).
Die Benachrichtigungs-Einheit 28 übernimmt die Benachrichtigung von Personen, für die eine Nachricht in das Automatensystem eingegangen ist, durch Senden einer Meldung zu einem Telefon (natürlichsprachlich kodierte Meldung), Pager, Short-Message-Service fähigen Kommunikationsgerät, Faxgerät, E-Mail fähigen Kommunikationsgerät und anderen Kommunikationsgeräten. Durch die Datenfluß-Verbindung 36 wird die Benachrichtigungs-Einheit 28 von der Vermittlungsautomat-Remote-Server-Kern-Einheit 29 angesteuert. Dies geschieht durch zwei Arten von Methodenaufrufen (Funktionsaufrufe) (Fig. 3b und Fig. 4a).
Der erste Art von Aufruf ist 'übernehme_benachrichtigungs_auftrag (. . .)' (Fig. 3b und Fig. 4a). Mit diesem Aufruf übergibt die Remote-Server-Kern-Einheit 29 der Benachrichtigungs-Einheit 28 den Auftrag, daß das (die) durch das Methodenargument (Funktionsargument) bezeichnete(n) Ziel(e) (Person), durch das Senden einer Meldung, zu benachrichtigen ist, da eine Nachricht für das (die) bezeichnete(n) Ziel(e) (Person) in das Vermittlungssystem eingegangen ist. Das übergebene Methodenargument (Funktionsargument) referenziert hierzu eine Eintrag in der Datenbank 33 (Fig. 5) in dem alle notwendigen Werte und Randbedingungen für die Benachrichtigung enthalten sind. Konnte die Meldung erfolgreich gesendet werden, wird der entsprechende Benachrichtigunsauftrag automatisch aus der internen Liste (Fig. 4f) der Benachrichtigungs-Einheit 28 für Benachrichtigungsaufträge gelöscht.
Der zweite Methodenaufruf 'entferne_benachrichtigungs_auftrag (. . .)' (Fig. 3b und Fig. 4a) teilt der Benachrichtigungs-Einheit 28 mit, daß der durch das Methodenargument (Funktionsargument) bezeichnete Benachrichtigungsauftrag aus der internen Liste (Fig. 4f) der Benachrichtigungs-Einheit 28 zu löschen ist. Dieser Methodenaufruf wird unter anderem immer dann von der Vermittlungsautomat-Remote-Server-Kern- Einheit 29 aufgerufen, wenn der Person, die benachrichtigt werden soll, noch keine Meldung erfolgreich zugesendet werden konnte aber sie sich die für sie bestimmten Nachrichten aktuell aus dem Automatensystem ausgelesen hat.
Hierzu verwendet die Benachrichtigungs-Einheit 28 die Datenbank 33 mit der sie über die Datenfluß-Verbindung 46 kommuniziert sowie die Sende-und-Empfangs- Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß-Verbindungen 38, 42, 43 und 44 kommuniziert. Die Benachrichtigungs-Einheit 28 arbeitet unabhängig von den anderen Einheiten 29, 30, 31 und 32 im Sinne einer parallelen Abarbeitung mittels eigenständigen Programmfäden (Multithread-Verarbeitung). Eine detaillierte Beschreibung der Benachrichtigungs-Einheit 28 ist in den Fig. 4a bis 4j enthalten.
Die Fernabfrage-Server-Einheit 30 ermöglicht die Fernabfrage einer in das Automatensystem eingegangenen Nachricht für die Zielperson der Nachricht, mit einem Telefon (durch Sprachsynthese erzeugte nachtürlichsprachlich kodierte Nachricht), Pager, Short-Message-Service fähigen Kommunikationsgerät, Faxgerät, Electronic- Mail(E-Mail) fähigen Kommunikationsgerät, Internet-WWW-Browser, Bildtelefon und anderen Kommunikationsgeräten. Hierdurch wird erreicht, daß eine Person sich die für sie eingegangenen Nachrichten abrufen kann, ohne einen Automaten des Vermittlungs­ automatensystem direkt aufsuchen zu müssen.
Hierzu verwendet die Fernabfrage-Server-Einheit 30 die Datenbank 33 mit der sie über die Datenfluß-Verbindung 47 kommuniziert sowie die Sende-und-Empfangs- Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß-Verbindungen 39, 42, 43 und 44 kommuniziert. Die Fernabfrage-Server-Einheit 30 arbeitet unabhänging von den anderen Einheiten 28, 29, 31 und 32 im Sinne einer parallelen Abarbeitung mittels eigenständigen Programmfäden (Multithread-Verarbeitung).
Die Bildtelefon-Server-Einheit 31 ermöglicht den Zugang zu dem Vermittlungs­ automatensystem mittels Bildtelefonen. Die Bedienung des Vermittlungsautomaten­ systems geschieht hierbei durch die Darstellung einer Bedienoberfläche, ähnlich der Bedienoberfläche wie in Fig. 6a beschrieben, auf dem Bildschirm des Bildtelefons, nur das hierbei die Bedienelementeansteuerung und Dateneingabe via Telefontasten und/oder Spracherkennung vorgenommen wird, zudem werden die Bedienelemente und deren Anordnung an die Auflösung des Bildtelefonbildschirmes angepaßt.
Hierzu verwendet die Bildtelefon-Server-Einheit 31 die Datenbank 33 mit der sie über die Datenfluß-Verbindung 48 kommuniziert sowie die Sende-und-Empfangs- Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß-Verbindungen 40, 42, 43 und 44 kommuniziert. Die Bildtelefon-Server-Einheit 31 arbeitet unabhängig von den anderen Einheiten 28, 29, 30 und 32 im Sinne einer parallelen Abarbeitung mittels eigenständigen Programmfäden (Multithread-Verarbeitung).
Die World-Wide-Web-Server-Einheit 32 ermöglicht den Zugang zu dem Vermittlungs­ automatensystem mittels Internet-WWW-Browsern. Hierbei stellt die Word-Wide-Web- Sever-Einheit 32 eine Bedienoberfläche, ähnlich der Bedienoberfläche wie in Fig. 6a beschrieben, zur Verfügung, die mit Hilfe von Hyper-Text-Markup-Language(HTML)- Seiten und einem Internet-WWW-Browser realisiert wird.
Hierzu verwendet die Bildtelefon-Server-Einheit 31 die Datenbank 33 mit der sie über die Datenfluß-Verbindung 48 kommuniziert sowie die Sende-und-Empfangs- Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß-Verbindungen 40, 42, 43 und 44 kommuniziert.
Die Bildtelefon-Server-Einheit 31 arbeitet unabhängig von den anderen Einheiten 28, 29, 31 und 32 im Sinne einer parallelen Abarbeitung mittels eigenständigen Programmfäden (Multithread-Verarbeitung).
Der Vermittlungsautomat-Remote-Server (Fig. 2a) ist als Management- und Servicesystem für die ihm zugeordneten Vermittlungsautomat-Local-Server vorgesehen und verfügt daher in der bevorzugten Ausführungsform über keine wie in Fig. 1a beschriebene erscheinungsmäßige Ausprägung und die in Fig. 6a beschriebene Bedieoberfläche für Benutzter des Vermittlungsautomatensystems. Der Vermittlungsautomat-Remote-Server (Fig. 2a) kann aber, aus Gründen der Kosteneffizienz, in einer weiteren möglichen Ausführungsform ebenfalls über die Erscheinung wie in Fig. 1a beschrieben und eine Bedienoberfläche wie in Fig. 6a beschrieben verfügen, hierzu dienen die Bedienereingabe-Einrichtungen 34 und die Bedienerausgabe-Einrichtungen 35, die über die Datenfluß-Verbindungen 50 und 51 mit Vermittlungsautomat-Remote-Server-Kern-Einheit 29 kommunizieren.
Die Bedienereingabe-Einrichtungen 34 bestehen aus den in Fig. 1a beschriebenen Eingabeeinrichtungen Bildschirm-Einheit (TouchScreen, 3D-fähig) 2, Digitale-Stereo- Kamera (Einzelbild, Video) 3, Mirofon 4a und 4b, Barcode-Lesegerät 7, Chipkarten/Magnetkarten-Lese-und-Schreib-Einrichtung 8, Geldannahme-Einheit 10, Tastatur 11, Zeigeeinrichtung 12 und Allgemeinen-Interaktions-Einrichtung 13.
Die Bedienerausgabe-Einrichtungen 35 bestehen aus den in Fig. 1a beschriebenen Ausgabeinrichtungen Bildschirm (TouchScreen, 3D-fähig) 2, Lautsprecher 6a und 6b, Chipkarten/Magnetkarten-Lese-und-Schreib-Einrichtung 8 und Drucker 9 und Allgemeinen-Interaktions-Einrichtung 13.
Fig. 2b beschreibt einen Vermittlungsautomat-Local-Server, dieser verfügt über die in Fig. 1a beschriebene erscheinungsmäßige Ausprägung und stellt eine Bedienoberfläche, wie in Fig. 6a beschrieben, für einen Benutzter des Vermittlungsautomatensystems zur Verfügung.
Der Vermittlungsautomat-Local-Server ist zudem für die lokale Datenhaltung für sich selbst und für die ihm zugeordneten Vermittlungsautomat-Clients (Fig. 2c) zuständig. Die lokale Datenhaltung kann auch optional wegfallen, diese geschieht dann durch das Auflösen aller Datenanfragen an den Vermittlungsautomat-Local-Server, durch den Zugriff auf den Vermittlungsautomat-Remote-Server (Fig. 2a). Die Voraussetzung hierfür sind entsprechend schnelle und kostengünstige Datenübertragungsverbindungen zwischen Vermittlungsautomat-Remote-Server (Fig. 2a) und den Vermittlungsautomat- Local-Severn.
Die Vermittlungsautomat-Local-Server-Kern-Einheit 52 steuert in Zusammenarbeit mit den Vermittlungsautomat-Remote-Server (Fig. 2a) und den Vermittlungsautomat-Client (Fig. 2c) den Datenaustausch und Datenabgleich zwischen den Automaten. Hierzu verwendet die Vermittlungsautomat-Local-Server-Kern-Einheit 52 die Datenbank 53 mit der sie über die Datenfluß-Verbindung 58 kommuniziert sowie die Sende-und-Empfangs- Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß-Verbindungen 59, 60, 61 und 62 kommuniziert.
Der Vermittlungsautomat-Remote-Server hat die Erscheinung wie in Fig. 1a beschrieben und eine Bedienoberfläche wie in Fig. 8a beschrieben, hierzu dienen die Bedienereingabe-Einrichtungen 54 und die Bedienerausgabe-Einrichtungen 55, die über die Datenfluß-Verbindungen 56 und 57 mit Vermittlungsautomat-Local-Server-Kern- Einheit 52 kommunizieren.
Fig. 2c beschreibt einen Vermittlungsautomat-Client, dieser verfügt über die in Fig. 1a beschriebene erscheinungsmäßige Ausprägung und stellt eine Bedienoberfläche, wie in Fig. 8a beschrieben, für einen Benutzter des Vermittlungsautomatensystems zur Verfügung.
Der Vermittlungsautomat-Client hat keine eigene lokale Datenhaltung sondern verwendet die Datenhaltung eines im zugeordneten Vermittlungsautomat-Local-Server (Fig. 2b).
Der Vermittlungsautomat-Client aber auch optional, um die Antwortgeschwindigkeit von Anfragen zu erhöhen, ebenfalls eine eigene Datenbank besitzen, dies ist aber nur dann sinnvoll, wenn eine große Anzahl von Vermittlungsautomat-Clients mit einem Vermittlungsautomat-Local-Server verbunden ist und dieser, durch häufige Datenzugriffe von Vermittlungsautomat-Clients, extrem betastet wäre
Die Vermittlungsautomat-Client-Kern-Einheit 63 steuert in Zusammenarbeit mit den Vermittlungsautomat-Local-Server (Fig. 2b) den Datenaustausch und Datenabgleich zwischen den Automaten. Hierzu verwendet die Vermittlungsautomat-Client-Kern- Einheit 53 die Sende-und-Empfangs-Einrichtungen 24, 25, 26 und 27 mit der sie über die Datenfluß-Verbindungen 68, 69, 70 und 71 kommuniziert.
Der Vermittlungsautomat-Client hat die Erscheinung wie in Fig. 1a beschrieben und die Bedienoberfläche wie in Fig. 8a beschrieben, hierzu dienen die Bedienereingabe- Einrichtungen 64 und die Bedienerausgabe-Einrichtungen 65, die über die Datenfluß- Verbindungen 66 und 67 mit Vermittlungsautomat-Client-Kern-Einheit 63 kommunizieren.
Fig. 3a beschreibt eine schematische Darstellung des erfindungsgemäßen Vermittlungsautomatensystem, in einer von vielen möglichen Konfiguration, sowie die mit dem Automatensystem in Verbindung tretenden Kommunikationsgeräte.
Der Vermittlungsautomat-Remote-Server 72 dient für die zentrale Datenhaltung der vermittlungsautomatenbezogenen Daten, die dieser in einer Datenbank (Fig. 5) speichert. Mit Hilfe der Datenübertragungsverbindungen 97, 98, 99, 100 und 101 werden die vermittlungsautomatenbezogenen Daten zwischen den Vermittlungsautomat-Remote- Server 72 und den Vermittlungsautomat-Local-Servern 75, 78, 80, 81 und 83 ausgetauscht. In Fig. 6 werden der Mechanismus zum Datenaustausch im Detail erklärt.
Die Datenübertragungsverbindungen 97, 98, 99, 100 und 101 sind für die Übertragung von Daten über große Entfernungen vorgesehen.
Für jede der einzelnen Datenübertragungsverbindungen 97, 98, 99, 100 und 101 kann ein, im Vergleich zu den anderen Datenübertragungsverbindungen gleicher Art, unterschiedliches Datentransportmedium und Datentransportprotokoll verwendet werden (Inhomogene Datenübertragungsverbindungsstruktur).
Für jede der einzelnen Datenübertragungsverbindungen 95 bis 115 kann eine asymmetrische Datenübertragungsverbindung verwendet werden. Dies bedeutet, daß eine logische bidirektionale Datenübertragungsverbindung mit zwei separaten Datenübertragungsverbindungen, mit jeweils unterschiedlichen Datentransportmedium und Datentransportprotokoll, implementiert wird. Hierdurch wird erreicht, daß das Datentransportmedium und der Datentransportweg in technischer Weise an die asymmetrischen Datenmengen der einzelnen Transportrichtungen angepaßt werden kann, um die Betriebskosten des Automatensystem, durch Ausnutzung der unterschiedlichen Datenübertragungskosten der einzelnen Übertragungswege, zu senken. Die asymmetrische Datenmengen der einzelnen Transportrichtungen können durch folgende Überlegung abgeschätzt werden: Ein Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 übersendet nur die Daten (Output) an den Vermittlungsautomat-Remote-Server, die direkt bei ihm erzeugt wurden sowie die Daten die ihm von dem mit ihm verbundenen Vermittlungsautomat-Clients zugesandt wurden. Die übersandte Datenmenge ist somit durch die Dauer eines einzelnen Bedienablaufes, der daraus generierten Daten und die Anzahl der Vermittlungsautomat-Clients bestimmt. Der Wert 'Anzahl der Vermittlungsautomaten-Clients' bleibt auch bei einem großen Vermittlungsautomatensystems mit vielen Vermittlungsautomat-Local-Servern relativ konstant. Da die Vermittlungsautomat-Local-Server bei einem großem Vermittlungsautomatensystem an Anzahl zunehmen und all diese ihre Daten im Vermittlungsautomat-Remote-Server akkumuliert werden und dann den einzelnen Vermittlungsautomat-Local-Servern zugesendet (INPUT) werden, kann die Datenmengenasymmetrie als 1: ('Anzahl der Vermittlungsautomaten-Clients'-1) abgeschätzt werden.
Die Datenübertragungsverbindungen 95 bis 115 werden dynamisch, in Abhängigkeit von Zeit, Zielort und der zu übertragenden Datenmenge, so ausgewählt und aufgebaut, so daß die jeweils günstigste Übertragungsstrecke verwendet wird, die bestimmt wird durch die Datenübertragungskosten für die unmittelbar zu übertragenden Daten, wobei die Datenübertagungskosten sich errechnen aus den Tarifen der einzelnen Telekommunikationsanbieter, die ihre Tarife abhängig von Zeit, Ort, Zielort und der übertragenden Datenmenge gestalten, der aktuellen Zeit und der errechneten Zeit die für die Übertragung der Daten benötigt wird, den Ort, den Zielort, der zu übertragenden Datenmenge sowie den Betriebskosten für die Übertragungseinrichtungen als auch den Rabatmöglichkeiten der einzelnen Telekommunikationspartner. Mit Hilfe von Tabellen, die für jeden der einzelnen Telekommunikationsanbieter die Tarife in Abhängigkeit von Zeit, Ort, Zielort, Datenmenge und Rabatmöglichkeiten enthalten sowie mit Parametern wie Betriebskosten für die einzelnen Übertragungseinrichtungen, der aktuellen Zeit, der errechneten Zeit, die für die Übertragung der Daten benötigt wird, Ort, Zielort und die zu übertragende Datenmenge wird die jeweils günstigste Übertragungsstrecke mit Hilfe von Statistischen-, Heuristischen Neuronalen und/oder Fuzzy-Methoden bestimmt.
Die Datenübertragungsverbindungen 95 bis 115 können außer in statischer Weise, die Datenübertragungsverbindung wird hierbei permanent aufrechterhalten, auch in dynamischer Weise realisiert werden, daß bedeutet, daß die Datenübertragungsverbindung wird nur dann aufgebaut, wenn tatsächlich Daten transportiert werden müssen und nachdem die Daten übertragen wurden, wird die Datenübertragungsverbindgung wieder abgebaut. Die dynamische Datenübertragungsverbindung kann durch eine Verzögerung des Datenverbindungsabbaus optimiert werden, so das bei zeitlich fast unmittelbar aufeinanderfolgenden Datentransportanforderungen ein unnötiges und verzögerndes sowie übertragungskostentechnisches ungünstiges Ab- und wieder Aufbauen einer Datenübertragungsverbindung entfällt. Die optimale Dauer der Verzögerung kann über Statistische-, Heuristische-, Neuronale- und Fuzzy-Methoden bestimmt werden.
Die vorgenannten Punkte erhöhen somit die Flexibilität für den Aufstellort in Bezug auf die dort vorhandene Datenübertragungsinfrastruktur sowie die Wirtschaftlichkeit der Datenübertragung durch die Anpaßbarkeit an die Kostenstruktur der regionalen Datennetzanbieter.
Für die Implementierung der Datenübertragungsverbindungen können Telefonnetze und Funktelefonnetze (in Verbindung mit Modems), ISDN-Verbindungen, Internet- Verbindungen, Netzwerkverbindungen, Kupfer- und Glasfaser-Verbindungen, Funkstrecken, laserbasierte Richtübertragungsstrecken sowie Spannungsnetzverbindungen verwendet werden, wobei sich letztere besonders als Teil für asymmetrische Datenübertragungsverbindungen eignen.
Die Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 dienen für die lokale Datenhaltung der vermittlungsautomatenbezogenen Daten, die diese in einer Datenbank speichern (Fig. 5), die Daten werden den zugeordneten Vermittlungsautomat-Clients 76, 77, 79 und 82 durch die lokalen Datenübertragungsnetze 105, 106 und 107 zur Verfügung gestellt. Für die Implementierung der lokalen Datenübertragungsnetze können serielle und parallele Verbindung, Telefonnetze und Funktelefonnetze (in Verbindung mit Modems), ISDN-Verbindungen, Internet-Verbindungen, Netzwerkverbindungen, Kupfer- und Glasfaser-Verbindungen, Funkstrecken, laserbasierte Richtübertragungsstrecken sowie Spannungsnetzverbindungen verwendet werden, eine der bevorzugten Ausführungsformen ist die Implementierung mittels Netzwerkverbindungen.
Die Vermittlungsautomat-Clients 76, 77, 79 und 82 und die Vermittlungsautomat-Local- Server 75, 78, 80, 81 und 83 sind in der bevorzugten Ausführungsform als primäre Ein- und Ausgabe Terminals für den Benutzer des Vermittlungsautomatensystems vorgesehen und verfügen daher über die in Fig. 1a beschriebene erscheinungsmäßige Ausprägung und die in Fig. 8a beschriebene Bedienoberfläche für Benutzter des Vermittlungsautomatensystem. Die Vermittlungsautomat-Remote-Server 72, 73 und 74 können aber, aus Gründen der Kosteneffizienz, in einer weiteren möglichen Ausführungsform ebenfalls über die Erscheinung (Fig. 1a) und die Bedienoberfläche (Fig. 8a) verfügen.
Die Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 verbessern die Antwortgeschwindigkeit und Betriebskosten der Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 und der Vermittlungsautomat-Clients 76, 77, 79 und 82 durch die Spiegelung (Caching) der Daten, in Bezug zu den Daten des Vermittlungsautomat- Remote-Server 72, für datenintensive Operationen, wie z. B. das 'Durchblättern' von einem großem Teil des Datenbestandes, ausgelöst durch einen Benutzer. Hier kommt besonders zum tragen, daß große Datenmengen wie visuelle Daten (Bilder, Video- Sequenzen, ect.) nicht kosten- und zeitintensiv für jeden Benutzer eines Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 oder eines Vermittlungsautomat-Client 76, 77, 79 und 82 vom Vermittlungsautomat-Remote-Server 72 übertragen werden müssen.
Die Vermittlungsautomat-Clients 76, 77, 79 und 82 können aber auch optional, um die Antwortgeschwindigkeit von Anfragen zu erhöhen, ebenfalls eine eigene Datenbank besitzen, dies ist aber nur dann sinnvoll, wenn eine große Anzahl von Vermittlungsautomat-Clients mit einem Vermittlungsautomat-Local-Server verbunden ist und dieser, durch häufige Datenzugriffe von Vermittlungsautomat-Clients, extrem belastet währe.
Eine bevorzugte mögliche Ausführungsform ist aber auch das die Vermittlungsautomat- Local-Server 75, 78, 80, 81 und 83 auf eine eigene Spiegelung der Daten, in Bezug zu den Daten des Vermittlungsautomat-Remote-Server 72, verzichten (keine eigene Datenbank) und alle Datenanfragen und Operationen auf die vermittlungsautomatenbezogenen Daten direkt auf den Vermittlungsautomat-Remote- Server 72 abbilden. Hierbei werden z. B. bei Suchanfragen nur die Suchkriterien zum Vermittlungsautomat-Remote-Server 72 übertragen, die eigentliche Ausführung der Suchanfrage auf die Datenbank übernimmt dann der Vermittlungsautomat-Remote- Server 72, und nur die Ergebnisse werden dann zum anfragendem Automaten zurückgesandt. Die Voraussetzung hierfür sind entsprechend schnelle und kostengünstige Datenübertragungsverbindungen zwischen Vermittlungsautomat-Remote-Server und den Vermittlungsautomat-Local-Servern.
Die Vermittlungsautomat-Remote-Server 72, 73 und 74 zeigen in dieser vorgestellten Konfiguration mehrere Vermittlungsautomat-Remote-Server mittels der Datenübertragungsverbindungen 95 und 96 verbunden. Diese Ausprägung stellt die dezentralisierte Datenhaltung aller vermittlungsautomatenbezogenen Daten in einem sehr großen Vermittlungsautomatensystem dar. Hierdurch ergeben sich mehrere Vorteile. Als Erstes ist die Ausfallsicherheit des Gesamtvermittlungsautomatensystems zu sehen, da ein Ausfall eines Vermittlungsautomat-Remote-Server nur ein Teil des Gesamtvermittlungsautomatensystems beeinträchtigen würde. Als Zweites lassen sich ortsbezogene zusammengehörige Daten effektiver handhaben, so könnte jeder Stadt ein Vermittlungsautomat-Remote-Server zugeordnet sein, und Anfragen an das Vermittlungsautomatensystem nach regional oder überregional aufgelöst werden, um so überflüssige Datenabfragen an nicht involvierte Vermittlungsautomat-Remote-Server zu verhindern, was der Schnelligkeit des Gesamtvermittlungssysstems bei Suchanfragen erhöht als auch die Datentransportkosten verringert.
Einer der wichtigsten Eigenschaften, der hier beschriebenen Erfindung, ist die automatische Benachrichtigung von Personen, für die eine Nachricht in das Vermittlungsautomatensystem eingegangen ist, durch das Senden einer Meldung zu einem Telefon (natürlichsprachlich kodierte Meldung) 87, 88 und 89 sowie 91, Pager 90, Short-Message-Service(SMS) fähigen Kommunikationsgerät 91, Faxgerät 92, Electronic- Mail(E-Mail) fähigen Kommunikationsgerät 93 und allgemeinen Sende-und- Empfangsgerät 94. Diese Aufgabe wird von einer Benachrichtigungs-Einheit (Fig. 2a: 28 und den Fig. 4a bis s) innerhalb eines Vermittlungsautomat-Remote-Servers 72, 73 und 74 übernommen.
Eine Person die eine Anzeige, eine Antwort auf eine Anzeige oder eine Rückantwort in das Vermittlungsautomatensystem eingebracht hat, kann durch die Angabe von Benachrichtigungszielen wie Telefon (natürlichsprachlich kodierte Meldung) 87, 88 und 89 sowie 91, Pager 90, Short-Message-Service(SMS) fähigen Kommunikationsgerät 91, Faxgerät 92, Electronic-Mail(E-Mail) fähigen Kommunikationsgerät 93 und allgemeinen Sende-und-Empfangsgerät 94, und den entsprechenden zugehörigen Randbedingungen wie Datumsbereich, Wochentagen, Tageszeiten, Benachrichtigungs_Priorität bei Angabe von mehreren Benachrichtigungszielen, Benachrichtigungs_intervall (Zeitlicher Abstand zwischen den einzelnen Benachrichtigungsversuchen) und Zeitlimit für einzelnen Benachrichtigungsversuch (Klingeldauer) das Vermittlungsautomatensystem beauftragen im Falle des Einganges einer Nachricht in das Vermittlungsautomatensystem für die Person, diese eine Meldung zu den angegebenen Adressen (Benachrichtigungszielen) zu senden. Hierbei ist besonders wichtig, das die Zieladressen nur der eingebenden Person der Zieladressen und den Vermittlungsautomatensystem zugänglich sind, so daß, die Person und deren Adressen (Benachrichtigungsziele) für die Person antwortenden Personen nicht zugänglich sind, also eine völlige Anonymität gewährleistet ist, wobei eine Person die eine Anzeige, eine Antwort auf eine Anzeige oder eine Rückantwort in das Vermittlungsautomatensystem eingebracht hat, aber auch wenn die Person das wünscht die Anzeige, Antwort auf eine Anzeige oder Rückantwort so gestalten kann, daß aus dieser direkt hervorgeht wie die Person unmittelbar kontaktiert werden kann, z. B. durch Angabe einer Adresse oder Telefonnummer(n) oder Kontaktort und Kontaktzeitraum. Da es einer Person die sich in das Vermittlungsautomatensystem einbringt, durch das Vermittlungsautomatensystem zudem ermöglicht wird, nur die Daten anzugeben, die sie persönlich für geeignet erachtet und kann diese Person eine Anzeige, Anwort oder Rückantwort (z. B. ohne Bild der Person) mit einer beliebig abstufbaren Anonymität erstellen.
Weiterhin kann die Person, die die Benachrichtigungsziele (Adressen) in das Vermittlungsautomatensystem eingibt, bestimmen, ob nur eine anonyme Meldung gesendet wird, das bedeutet es wird nur übermittelt, daß eine oder mehrere Nachrichten in das Vermittlungsautomatensystem eingegangen sind ohne Hinweis auf die Person, die die Benachrichtigungsziele in das Vermittlungsautomatensystem eingebracht hat, oder eine personenbezogene Meldung, daß bedeutet es wird übermittelt, daß eine oder mehrere Nachrichten in das Vermittlungsautomatensystem eingegangen sind mit einen frei bestimmbaren Hinweis (Name, Klang, Musik, Bild, Symbol, Text etc.) auf die Person, die die Benachrichtigungsziele in das Vermittlungsautomatensystem eingebracht hat oder eine vollständige Meldung, das bedeutet es wird übermittelt, daß eine oder mehrere Nachrichten in das Vermittlungsautomatensystem eingegangen sind und optional einen frei bestimmbaren Hinweis (Name, Klang, Musik, Bild, Symbol, Text etc.) auf die Person, die die Benachrichtigungsziele in das Vermittlungsautomatensystem eingebracht hat sowie den Inhalt der Nachricht(en) oder von Teilen der Nachricht(en).
Die Meldungen selbst werden in Abhängigkeit von dem Gerätetyp des Benachrichtigungszieles in für die entsprechenden Geräte passenden Formate kodiert, daß bedeutet, daß z. B. textuelle Daten aus den eingegangenen Nachrichten mittels Sprachsyntese in akustische natürlichsprachlich kodierte Daten umgewandelt werden, falls das Zielgerät ein Telefon 87, 88, 89, ein Handy 91 oder ein anderes zum Empfang von akustischen Informationen geeigneten Empfangsgeräten ist.
Ist der Gerätetyp des Benachrichtigungszieles ein Pager oder ein Short-Message-Service fähiges Empfangsgerät so werden die Meldungen, soweit möglich, beschränkt durch die Zeichenspeichermöglichkeiten der einzelnen Geräte, textuell Kodiert und zu den entsprechenden Page-Service-Dienst-Anbietern gesendet, die dann die Meldungen zu den einzelnen Zielgeräten senden.
Ist der Gerätetyp des Benachrichtigungszieles ein Fax-Gerät oder ein Fax fähiges Empfangsgerät so werden die Meldungen für den Faxempfang in Form von Faxseiten entsprechend kodiert, hierbei können außer den textuellen Daten auch die visuellen Daten (Bilder, Videobild) in Form von Bildern in der Faxseite mit übertragen werden.
Ist der Gerätetyp ein Electronic-Mail fähiges Empfangsgerät so werden alle Daten der eingegangenen Nachrichten, entweder in einen E-Mail-Text, der die textuellen Informationen der eingeangenen Nachrichten beinhaltet mit an diesen angefügten (attached) Dateien (Bild-Dateien, Ton-Dateien, Video-Dateien) oder in einen kurzen E- Mail-Text mit an diesem angefügten (attached) Text-Dateien die eingebetteten Multimediaelementen (Bild-Dateien, Ton-Dateien, Video-Dateien) enthalten kodiert.
Die Benachrichtigungs-Einheit kann durch ihren modularen und objektorientierten Aufbau mit minimalen Aufwand für weitere allgemeine Sende-und-Emfpangsgeräte erweitert werden. Die Benachrichtigungs-Einheit wird im Detail in (Fig. 2a: 28 und den Fig. 4a bis 4s) beschrieben.
Der große Vorteil gegenüber bestehenden Vermittlungsautomatensystemen ist, das die Benutzer des hier patentmäßig beschriebenen Vermittlungsautomatensystem nicht zyklisch einen Automaten des Vermittlungsautomatensystems aufsuchen müssen oder explizite Abfragen an das Vermittlungsautomatensystem stellen müssen, um zu überprüfen ob für sie ein Nachricht (Reaktion) eingegangen ist. Das bedeutet direkt, daß unnötiger Zeit- und Mitteleinsatz für die Nutzer des Vermittlungsautomatensystem wegfallen. Das ist ein besonderer Vorteil für die Ausprägung des hier beschriebenen Vermittlungsautomatensystems als Partnervermittlungssystem in zwei wichtigen Punkten.
Erstens fällt hier die psychologische Belastung weg, die durch vergebliche Anfragen an das Vermittlungsautomatensystem, ob schon eine Nachricht (Reaktion) auf die eigene Person eingegangen ist, entstehen.
Zweitens wird die Reaktionszeit, also die Zeitspanne zwischen der Eingabe einer Nachricht für eine Person und das Erhalten einer Rückantwort, extrem verringert, was die Aussichten auf eine erfolgreiche Partnervermittlung erhöht, da die mentale Bindung zwischen der eingebrachten Nachricht und der daraus resultierenden Rückantwort durch die enge zeitliche Kopplung sehr groß ist.
Die Aufgabe des Sendens von Benachrichtigungen zu Benachrichtigungszielen (Personen), für die eine Nachricht in das Automatensystem eingegangen ist, kann auch von den Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 übernommen werden sowie von den Vermittlungsautomat-Clients 76, 77, 79 und 82, dies kann aber in Extremfällen zu inkonsistenten Zuständen bezüglich dem Aussenden und Empfangen einer Meldung und der darauf folgenden unmittelbaren Reaktion der Zielperson, in Form des Versuchs die neu eingegangene Nachricht zu lesen, und dem Vorhandensein der entsprechenden Daten auf allen im Vermittlungsautomatensystem sich befindenen Vermittlungssystemen führen. Dieser Fall kann durch ein entsprechendes Protokoll abgefangen werden, das die vollständige Verteilung der Nachricht, auf alle sich im Vermittlungsautomatensystem befindenen Vermittlungsautomaten, sicherstellt, bevor ein Benachrichtigungsversuch unternommen wird, was aber einen erhöhten Kommunikationsaufwand bedeutet. Die Aufgabe des Sendens von Benachrichtigungen an Personen durch Vermittlungsautomat-Local-Server 75, 78, 80, 81 und 83 und Vermittlungsautomat-Clients 76, 77, 79 und 82 bedeutet, daß die in öffentlichen Plätzen und Einrichtungen aufgestellten Automaten, bedingt durch die Notwendigkeit des Vorhandenseins von Kommunikationsverbindungen die einen aktiven Datenverbindungsaufbau zu den Benachrichtigungszielen (Personen) ermöglichen müssen, ein weites Feld für Manipulation, wie das Einschleifen von Handtelefonen für Ferngespräche, zu Lasten des Vermittlungsautomatenbetreiber öffnen. Ein mechanischer und/oder elektronischer Schutz, der Kommunikationsverbindungen, der in den wenigsten Fällen vollständig sein kann, würde die Automatenkosten zusätzlich erhöhen. Daher ist eine der bevorzugten Ausführungsformen, die, in der die Vermittlungsautomat-Remote- Server 72, 73 und 74 das Senden von Benachrichtigungen übernehmen.
Das Vermittlungsautomatensystem verfügt zudem über ein Fernabfrage-Einheit (Fig. 2a: 30), die die Fernabfrage einer in das Automatensystem eingegangenen Nachricht für die Zielperson der Nachricht, mit einem Telefon (durch Sprachsynthese erzeugte nachtürlichsprachlich kodierte Nachricht) 87, 88, 89 und 91, Pager 90, Short-Message- Service fähigen Kommunikationsgerät 91, Faxgerät 92 (Faxabfrage), Electonic-Mail fähigen Kommunikationsgerät 93, Internet-WWW-Browser 86, Bildtelefon 85 und 85 und anderen allgemeinen Kommunikationsgeräten 94 ermöglicht. Hierdurch wird erreicht, daß eine Person sich die für sie eingegangenen Nachrichten abrufen kann, ohne einen Automaten des Vermittlungsautomatensystem direkt aufsuchen zu müssen, dies ist besonders dann sinnvoll wenn eine Person für die automatische Benachrichtigung einen anonymen Meldungsvorgang bestimmt hat um anderen Personen, die sich zufälligerweise am Meldungsempfangsgerät befinden, nicht die Möglichkeit zu geben vertrauliche Nachrichten zu erhalten, um dann nach dem Empfangen einer anonymen Meldung die eigentliche(n) Nachricht(en) abzurufen.
Das Vermittlungsautomatensystem ist im besonderen auch mittels Bildtelefonen 85 und 84 zugänglich (Fig. 2a: 31), mit Hilfe der Datenübertragungsverbindungen 103 und 102 die als als analoge Telefonverbindung, ISDN-Verbindung oder auch via Internet- Verbindung realisiert werden können wird die Verbindung zu dem Vermittlungsautomatensystem aufgebaut. Der große Vorteil für den Benutzer des hier beschriebenen Vermittlungsautomatensystem ist, daß sich der Benutzer bei der Bedienung, insbesondere bei der Eingabe von persönlichen Daten, nicht der Öffentlichkeit aussetzen muß, und das sich der Benutzer die Leistungen des Vermittlungsautomatensystem von zu Hause oder auf Arbeit zugänglich machen kann, ein explizites Aufsuchen von Automaten des Vermittlungsautomatensystems ist also hierbei nicht notwendig. Die Bedienung des Vermittlungsautomatensystems geschieht hierbei durch die Darstellung einer Bedienoberfläche ähnlich der Bedienoberfläche der Vermittlungs-Local-Server 75, 78, 80, 81 und 83 und Vermittlungs-Clients 76, 77, 79 und 82 (Fig. 8a) auf dem Bildschirm des Bildtelefons, nur das hierbei die Bedienelementeansteuerung und Dateneingabe via Telefontasten und/oder Spracherkennung vorgenommen wird, zudem werden die Bedienelemente und deren Anordnung an die Auflösung des Bildtelefonbildschirmes angepaßt.
Das Vermittlungsautomatensystem ist auch mittels Internet-WWW-Browsern 86 via Internet-Verbindung 104 zugänglich. Hierbei stellt das Vermittlungsautomatensystem eine Bedienoberfläche ähnlich der Bedienoberfläche der Vermittlungs-Local-Server 75, 78, 80, 81 und 83 und Vermittlungs-Clients 76, 77, 79 und 82 (Fig. 8a) zur Verfügung. Diese wird dargestellt mit Hilfe von Hyper-Text-Markup-Language(HTML)-Seiten, die von der Word-Wide-Web(WWW)-Server-Einheit (Fig. 2a: 32) eines Vermittlungsautomat-Remote-Servers 72, 73 und 74 von einem Internet-WWW-Browser 86 angefordert werden.
Fig. 3b beschreibt den Ablauf einer typischen Interaktion von Benutzern und dem patentmäßig beschriebenen Vermittlungsautomatensystem. Diese Beschreibung stellt nur einen beispielhaften Ablauf dar, und ist deshalb nur ein möglicher Ablauf von vielen möglichen Abläufen zwischen den Benutzern und den Vermittlungsautomatensystem.
Der Ablauf wird in der Form eines Interaktionsdiagrammes, in der Booch-Notation, dargestellt. Ein Interaktionsdiagramm zeigt die Nachrichten in ihrer zeitlichen Abfolge, die ausgewählte Objekte eines Systems in einer bestimmten, zeitlich abgegrenzten Situation untereinander austauschen. Eine solche Situation wird Szenario genannt. Ein Szenario zeigt einen Ausschnitt aus dem Leben eines Systems oder Teilsystems. Hierbei werden die Subsysteme oder Objekte durch Rechtecke dargestellt und mit senkrechten Lebenslinien versehen. Die Zeit verläuft von oben nach unten. Die Nachrichten zwischen den Subsystemen oder Objekten markieren waagerechte Pfeile zwischen den Lebenslinien. Die Aktivitäten der Subsysteme oder Objekte werden durch Balken auf den entsprechenden Lebenslinien dargestellt.
Das hier in Fig. 3a beschriebene Szenario, zeigt die Interaktion zwischen zwei Benutzern und dem hier patentmäßig beschriebenen Vermittlungsautomatensystem. Der eine Benutzer (Benutzer_A) ist hierbei derjenige, der eine Vermittlungsanzeige, inklusive der Adresse(n) und Randbedingung(en) für die automatische Benachrichtigung, in das Vermittlungsautomatensystem einbringt und der andere Benutzer (Benutzer_B) ist derjenige, der mit Hilfe des Vermittlungsautomatensystems sich die, in diesem enthaltenen, Vermittlungsanzeigen betrachtet und aus diesen eine auswählt, die des hier beschriebenen einbringenden Benutzers (Benutzer_A) der Vermittlungsanzeige, und auf die er (Benutzer_A) in Form einer Nachricht, die er in das Vermittlungsautomaten­ systems einbringt, antwortet. Nach Eingang und der Zurverfügungstellung der Nachricht für alle Automaten in dem Vermittlungsautomatensystems, benachrichtigt das Vermittlungsautomatensystem den Vermittlungsanzeigen einbringenden Benutzer (Benutzer_A). Dieser fragt daraufhin, die für ihn im Vermittlungsautomatensystem enthaltene Nachricht ab. Er entscheidet sich, aufgrund der Nachricht der Person (Person_B), näher Kontakt aufzunehmen und wählt die Option für anonymen Direktkontakt an. Hierbei versucht das Vermittlungssystem mittels einer der Telefone (Bildtelefone) der Person_B diese anzurufen(wenn diese dies erlaubt hat) und somit einen Kontakt zwischen den beiden Personen herzustellen wobei das Automatensystem die Zieladresse (Telefonnummer) der angerufenen Person (Person_B) der Person_A nicht zugänglich macht.
Dieses Szenario in nur ein Szenario aus beliebig vielen möglichen Szenarien innerhalb des Vermittlungsautomatensystems.
So kann das hier gezeigte Szenario durch weitere Nachrichten die beide Benutzer in das Vermittlungsautomatensystem eingebracht haben beliebig weiter fortgesetzt werden. Das beinhaltet auch, daß hierbei beide Benutzer von dem Vermittlungsautomatensystem automatisch, über den Eingang von Nachrichten für die eigene Person, benachrichtigt werden.
So können mehrere Benutzer (mehrere Benutzer_B) auf eine Vermittlungsanzeige antworten, und der Benutzer (Benutzer_A), der diese Vermittlungsanzeige in das Vermittlungsautomatensystem eingebracht hat, kann mit jedem einzelnen, der antwortenden Benutzer (antwortender Benutzer_B), unabhängig und parallel, einen wechselseitigen Nachrichtenaustausch unterhalten.
So kann auch, bestimmt vom Benutzer (vollständige Meldung, siehe Fig. 3a), die Meldung des Vermittlungsautomantensystem die eigentlichen Nachricht(en) direkt enthalten, und somit ein wie in diesem Szenario gezeigtes explizites Aufsuchen eines Automaten des Vermittlungsautomatensystems wegfallen, was auch mittels Fernabfrage möglich ist.
So ist es auch möglich mittels Bildtelefonen und/oder Internet-WWW-Browser mit dem Vermittlungsautomatensystem zu interagieren, so das ein direktes Aufsuchen eines der Automaten des Vermittlungsautomatensystems wegfallen kann.
So können auch desweiteren andere Datenaustausch- und Datenabgleich-Mechanismen verwendet werden, als dieser hier in diesem Szenario beschriebenen.
Im folgenden wird hier der Ablauf des in Fig. 3b gezeigten Szenarios beschrieben. Die hier miteinander in Interaktion tretende Einheiten sind der Benutzer_B 116a, ein Vermittlungsautomat-Client_A 117a, ein Vermittlungsautomat-Local-Server_A 118a, ein Vermittlungsautomat-Remote-Server 119a, ein Vermittlungsautomat-Local-Server_B 120a, ein Vermittlungsautomat-Client_B 121a und der Benutzer_B 122a. Die Elemente 116b bis 122b zeigen die Zeitlinien der entsprechenden Interaktions-Einheitensich 116a bis 122b.
Der Benutzer_A 116a erstellt (Aktivität 123) eine neue Vermittlungsanzeige, inklusive der Adresse(n) und Randbedingung(en) für die automatische Benachrichtigung, und übergibt (143) sie dem Vermittlungsautomat-Client_A 117a. Dieser sendet (144) die Vermittlungsanzeige daraufhin (Aktivität 124) dem ihm zugeordneten Vermittlungsautomat-Local-Server_A 118a. Anschließend übergibt (145) der Vermittlungsautomat-Client_A 118a dem Benutzer_A 116a ein auf die neu erstellte Vermittlungsanzeige bezogenes Passwortes. Der Benutzer_A 116a identifiziert sich mit Hilfe dieses zugeteilten Passwortes um zu allen für ihn eingebrachten Nachrichten Zugriff zu erlangen und seinerseits auf diese eine Rückantwort einzubringen. Wobei jede erstmalige, von einem auf die Vermittlungsanzeige antwortenden Benutzer (B, B', B", . . .), eingebrachte Nachricht, Benutzer (B, B', B", . . .) erhält genau dann ebenfalls ein Passwort, als Beginn eines möglichen Dialoges betrachtet wird und den Benutzer_A 116a auch so präsentiert wird. Die entsprechende Datenstruktur wird in Fig. 5 (Datenbank) beschrieben.
Der Vermittlungsautomat-Remote-Server 119a beginnt (Aktivität 126) einen Datenaustausch- und Datenabgleich-Vorgang zwischen den einzelnen Vermittlungsautomat-Local-Server (118a und 120a). Der Vermittlungsautomat-Remote- Server 119a startet (146) ein Datenaustausch- und Datenabgleich-Vorgang mit dem Vermittlungsautomat-Local-Server_A 118a (Aktivität 127), hierbei erhält der Vermittlungsautomat-Remote-Server 119a die neu erstellte Vermittlungsanzeige, anschließend startet (147) der Vermittlungsautomat-Remote-Server 119a ein Datenaustausch- und Datenabgleich-Vorgang mit dem Vermittlungsautomat-Local- Server_B 120a (Aktivität 128), hierbei sendet der Vermittlungsautomat-Remote-Server 119a die neu erstellte Vermittlungsanzeige zu dem Vermittlungsautomat-Local-Server_B 120a.
Der Benutzer_B 122a sucht ein Automaten des Vermittungsautomatensystem, hier Vermittlungsautomat-Client_B 121a, auf (Aktivität 129), und fordert (148) eine Auswahl der von dem Vermittlungsautomat-Client_B 121a angebotenen Vermittlungsanzeigen an (Aktivität 130). Der Vermittlungsautomat-Client_B 121a fordert (149) daraufhin bei dem ihm zugeordneten Vermittlungsautomat-Local-Server_B 121a die entsprechenden Auswahl von Vermittlungsanzeigen ab (Aktivität 131) und stellt das Ergebnis den Benutzer_B 122a zur Verfügung. Dieser entscheidet sich dann eine Antwort, auf die von dem Benutzer_A 116a eingebrachte Vermittlungsanzeige, in den Vermittlungsautomat- Client_B 121a einzubringen (148a). Dieser sendet (150) dann die Anwort auf die Vermittlungsanzeige zum Vermittlungsautomat-Local-Server_B 120a, die dieser entgegennimmt (Aktivität 132). Anschließend übergibt (145) der Vermittlungsautomat- Client_B 121a dem Benutzer_B 122a, da dieser erstmalig auf die entsprechende Vermittlungsanzeige geantwortet hat, und damit einen möglichen Dialog begonnen hat, ein, in Bezug zu kontaktierten Vermittlungsanzeige bezogenes, Password. Falls die beiden Benutzer (116a und 122a) einen Dialog untereinander, durch mehrfaches einbringen von Nachrichten füreinander, aufnehmen so identifiziert sich der Benutzer_B 122a, und damit den begonnenen Dialog, durch Angabe des bei Beginn des Dialoges zugeteilten Passwortes.
Der Vermittlungsautomat-Remote-Server 119a beginnt (Aktivität 133) einen Datenaustausch- und Datenabgleich-Vorgang zwischen den einzelnen Vermittlungsautomat-Local-Servern (118a und 120a). Der Vermittlungsautomat-Remote- Server 119a startet (152) ein Datenaustausch- und Datenabgleich-Vorgang mit dem Vermittlungsautomat-Local-Server_A 118a (Aktivität 134). Anschließend startet (153) der Vermittlungsautomat-Remote-Server 119a einen Datenaustausch- und Datenabgleich-Vorgang mit dem Vermittlungsautomat-Local- Server_B 120a (Aktivität 135). Hierbei erhält der Vermittlungsautomat-Remote-Server 119a die Antwort auf die Vermittlungsanzeige von dem Vermittlungsautomat-Local- Server_B 120a.
Der Vermittlungsautomat-Remote-Server 119a beginnt (Aktivität 136) einen Datenaustausch- und Datenabgleich-Vorgang zwischen den einzelnen Vermittlungsautomat-Local-Server (118a und 120a). Der Vermittlungsautomat-Remote- Server 119a startet (154) ein Datenaustausch- und Datenabgleich-Vorgang mit dem Vermittlungsautomat-Local-Server_A 118a (Aktivität 137). Hierbei sendet der Vermittlungsautomat-Remote-Server 119a die Antwort auf die Vermittlungsanzeige zu dem Vermittlungsautomat-Local-Server_A 118a. Damit hat der Vermittlungsautomat- Remote-Server 119a die Antwort auf die Vermittlungsanzeige auf allen Vermittlungsautomat-Lokal_Server (118a und 119a) zur Verfügung gestellt und überträgt deshalb seiner Benachrichtigungs-Einheit (Fig. 2a und Fig. 4a bis 45) die Aufgabe, den Benutzer_A 116a, den Ersteller der Vermittlungsanzeige, durch das Senden (155) einer Meldung (bis dies Erfolg hat oder der Auftrag gelöscht wird), diesem von dem Eingang einer Antwort auf seine Vermittlungsanzeige zu benachrichtigen. Der Senden (155) dieser Meldung ist erfolgreich und ein vom Benutzer_A 116a angegebenes Kommunikationsgerät empfängt (Aktivität 138) die Meldung vom Vermittlungsautomat- Remote-Server 119a. Anschließend startet (156) der Vermittlungsautomat-Remote- Server 119a ein Datenaustausch- und Datenabgleich-Vorgang mit dem Vermittlungsautomat-Local-Server_A 120a (Aktivität 139).
Der Benutzer_A 116a sucht, motiviert durch die ihm zugesandte Meldung, einen Automaten des Vermittungsautomatensystem, hier Vermittlungsautomat-Client_A 117a, auf (Aktivität 140), identifiziert sich mit dem bei der Erstellung der Vermittlungsanzeige zugewiesenen Paßwort (145) und fragt (157) den Vermittlungsautomat-Client_A 117a nach den für ihn eingegangenen Nachrichten ab. Hierzu fragt (158a) der Vermittlungsautomat-Client_A 117a den ihm zugeordneten Vermittlungsautomat-Local- Server_A 118a seinerseits nach der(den) entsprechenden Nachricht(en) ab, dieser bearbeitet (Aktivität 142a) die Anfrage und gibt die gewünschte(n) Nachricht(en) an den Vermittlungsautomat-Client_A 117a zurück, die dieser dann dem Benutzer_A 116a präsentiert. Der Benutzer_A 116a entscheidet sich, aufgrund der Nachricht, näher Kontakt aufzunehmen und wählt die Option für anonymen Direktkontakt (Aktivität_158b) an. Hierbei versucht das Vermittlungssystem mittels einer der Telefone (Bildtelefone) des Benutzers_B 122a diesen anzurufen (wenn dieser dies erlaubt hat) und somit einen Kontakt zwischen den beiden Personen herzustellen, wobei das Automatensystem die Zieladresse (Telefonnummer) des angerufenen Benutzer_B 122a dem Benutzer_A 166a nicht zugänglich macht. Das Vermittlungsautomatensystem unternimmt einen erfolgreichen Verbindungsaufbau (Aktivität_158c) zu Benuter_B 122a. Beide Benutzer (116a und 122a) können nun direkt miteinander kommunizieren.
Fig. 4a beschreibt die Benachrichtigungs-Einheit (Fig. 2a: 28) des hier patentmäßig beschriebenen Vermittlungsautomatensystem mit Hilfe des Objektorientierten Paradigmas (OOP) (objektorientierte Analyse (OOA), objektorientiertes Design (OOD) und objektorientierte Implementierung (OOI)).
Einer der wesentlichen Punkte des hier beschriebenen Vermittlungsautomatensystem ist, daß der Aufbau und die Implementierung der Steuerungssoftware des Vermittlungs­ automatenystemes in einer objektorientierten Weise geschieht. Das bedeutet, daß die Steuerungssoftware des Vermittlungsautomatensystem in klar zu übersehenden Abstraktionsschichten und Strukturen eingeteilt werden kann und den einzelnen Aufgaben und Einrichtungen (anzusteuernde Gerätschaften) jeweils eigene Steuerungssoftwareteile (Klassen und Objekte) zugeteilt werden, die eine starke Abgrenzung untereinander aufweisen, und im besonderen, daß sich Steuerungssoftwareteile innerhalb des Vermittlungsautomatensystems mehrfach verwenden lassen.
Hierdurch ergeben sich mehrere Vorteile, die Steuerungssoftware für die Benachrichtigungs-Einheit (Fig. 2a: 28) des patentmäßig beschriebenen Vermittlungsautomatensystem ist deshalb kompakt in ihrer Größe, robust gegenüber Änderungen und Erweiterungen, kann auf erprobte Softwareteile (Klasse Event 161, Klasse List 162 u. a. m.) aufsetzen und ist bereits vom Entwurf her (abstrakte Klasse Gerät 166) auf einfache Anpaßbarkeit und Erweiterbarkeit, durch neue Geräte für die Kommunikation, ausgelegt.
Die hier patentmäßige beschriebene Steuerungssoftware wird in der Booch-Notation für den Objektorientierten Entwurf dargestellt. In dieser Figur wird das Klassendiagramm der Steuerungssoftware für die Benachrichtigungs-Einheit (Fig. 2a: 28) gezeigt. Hierbei bedeuten die gestrichelten Wolken ein Klasse oder Struktur im objektorientieren Sinn. Ein großes A in einem Dreieck innerhalb einer gestrichelten Wolke (Klasse) bedeutet, daß diese Klasse eine 'Abstrakte Klasse' ist, und daß aus dieser kein Objekt direkt erzeugt werden kann, sondern das diese Klasse als Vaterklasse, für andere Klassen (Sohnklassen) dient, aus denen dann erst Objekte erzeugt werden können. Hierbei erben die von der Vaterklasse abgeleiteten Sohnklassen die Datenelemente (Attribute) und das Verhalten (Methoden) der Vaterklasse. Die Linien zwischen den gestrichelten Wolken (Klassen) bezeichnen Beziehungen zwischen den Klassen. Ein Pfeil am Ende einer Linie kennzeichnet ein Vererbungsbeziehung, wobei der Pfeil die beerbte Klasse bezeichnet und das andere Ende der Linie die erbende Klasse. Ein leerer Kreis am Ende einer Linie bezeichnet, daß die sich an dem Kreis befindende Klasse die Klasse am anderen Ende der Linie kennt und verwendet, aber selbst für ihren eigenen Aufbau (Attribute) nicht verwendet. Ein gefüllter Kreis sagt hingegen, daß die sich an dem Kreis sich befindende Klasse, die am anderen Ende der Linie bezeichnete Klasse, für ihren eigenen Aufbau verwendet (Aggregation).
Eine Klasse ist eine Kombination von Attributen (Daten) und Methoden (Funktionen auf die Daten der Klasse). Eine Klasse dient als Vorlage für Objekte. Aus einer Klasse können somit beliebig viel Objekte der gleichen Art erzeugt werden. Eine Analogie hierzu ist eine Gebäckform (Klasse), mit der diese eigentlichen Plätzchen (Objekte) hergestellt werden können. Die Daten eines Objektes bilden seinen Zustand ab und mit Hilfe von Methoden (Funktionsaufrufen zu diesem Objekt) können die Daten verändert werden. Objekte werden verwendet zur Modellierung von logischen Einheiten und Verantwortlichkeiten sowie zur Abbildung von realen Dingen (Geräten, Einrichtungen, . . .) in die Steuerungssoftware. Hierbei spiegelt sich dann in direkter Weise die Aufgabe der anzusteuernden Einrichtungen in der Steuerungssoftware wieder (z. B. als Klasse Liste 162 oder Gerät_FON 168). Ein Klasse kann die Datenstruktur und die Methoden einer vorhandenen Klasse auf mehrere Arten für ihre eigenen Aufgaben nutzen. Die erste Art ist die der Verwendung von fremden Objekten (Objekte erzeugt aus der zu benutzenden Klasse) während der Laufzeit des Programmes in Form einer Service- Anfrage an diese, dies wird als Benutzt-Beziehung (174, 177, 178, 181, 184, 185, 186, 187, 194, 195, 196, 197, 198 und 199) bezeichnet. Die zweite Art ist die Einbettung (Aggregation) einer benötigten Klasse in die eigene Klasse, dies wird als Hat-Relation (175, 176, 179, 180, 182 und 183) bezeichnet. Die dritte Art ist das Erben (188, 189, 190, 191, 192 und 193) von einer anderen Klasse (Vaterklasse, Klasse Gerät 166), hierbei wird außer den Datenstrukturen und Methoden der geerbten Klasse auch noch das eigene Erscheinungsbild verändert, in der Art, daß die eigene Klasse (Sohnklasse) als Typ der geerbten Klasse angesehen wird. Hierdurch ist es möglich unterschiedlichen Klassen (Sohnklassen, die Klassen Gerät_FON 168, Gerät_FAX 169, Gerät_PAGER 170, Gerät_SMS 171, Gerät_E_MAIL 172 und Gerät_ALLG_KOMM 173) in gleicher Art und Weise handhaben und verwenden (als Klasse Gerät 166) zu können. Die vererbende Masse bietet manchmal nur die leeren Methodenschnittstellen (Funktionsdeklarationen/Methodensignaturen) an (Klasse Gerät 166, Methoden 'm_versuche_benachrichtigung' und 'm_gebe_geräte_art'), die dann von den erbenden Klassen (Sohnklassen, die Klassen Gerät_FON 168, Gerät_FAX 169, Gerät_PAGER 170, Gerät_SMS 171, Gerät_E_MAIL 172 und Gerät_ALLG_KOMM 173) mit ihren eigenen Methodenprogrammkörpern ausgefüllt werden müssen.
Die beispielhafte Ausführung der Steuerungssoftware wird hier in der objektorientierten Programmiersprache C++ vorgenommen, dies ist aber nur eine von vielen möglichen geeigneten Programmiersprachen für die Realisierung der Steuerungssoftware. Als weitere mögliche Programmiersprachen sind unter anderem Java und Smalltalk geeignet. Die hier vorliegende Ausführung der Steuerungssoftware verwendet die Möglichkeit der parallelen Ausführung von mehreren Programmausführungspfaden (Multithreading) innerhalb der Steuerungssoftware. Dies hat den Vorteil, daß logisch getrennte Vorgänge auch getrennt ablaufen, damit besser voneinander entkoppelt und robust sind (trotz einem Fehler, in einem Teil der Software, können die anderen Teile weiterarbeiten und sich gegenseitig kontrollieren, und gegebenenfalls die entsprechenden Softwareteile neu starten) und somit das Design der Steuerungssoftware klarer, effektiver und leichter erweiterbarer wird.
Als erstes werden hier die verwendeten allgemeinen Typen, die von der Programmiersprachenumgebung zur Verfügung gestellt werden beschrieben.
Allgemeine Typen
Der Typ long ist Bestandteil der Programmiersprache C++ und bezeichnet eine ganzzahlige Zahl mit mindestens 32-Bit Speicherplatz.
Der Typ String beschreibt eine Klasse, die eine einfache Handhabung, von Zeichenfeldern ermöglicht. Diese Klasse dient zur Aufnahme und Manipulation von Textdaten (Zeichenfelder). Die Klasse übernimmt selbsttätig alle notwendigen Speicheroperation zum Speichern und Freigeben von Textdaten. Diese Klasse ist Bestandteil der meisten C++-Bibliotheken, in einigen Bibliotheken wird sie auch als CString bezeichnet.
Der Typ List beschreibt eine Klasse 162, die eine einfache Handhabung einer Liste von Objekten ermöglicht. Diese Klasse ermöglicht minimal das Anfügen, Einfügen, Auslesen und Löschen von Objekten oder Referenzen auf Objekten in einer Liste. Diese Klasse übernimmt selbsttätig alle notwendigen Speicheroperationen zum Speichern und Freigeben von Einträgen in einer Liste. Diese Klasse ist Bestandteil der meisten C++- Bibliotheken, in einigen Bibliotheken wird sie auch als CList oder Collection bezeichnet.
Der Typ Event beschreibt eine Klasse 161, die zwei sogenannte Ereignisse speichert, das eine wird als 'gesetzt' (aktiv) und das andere als 'rückgesetzt' (nicht aktiv) bezeichnet. Diese Klasse wird für die Prozesskommuniktion eingesetzt und speziell Kommunikation und Steuerung innerhalb von Multithreading-Programmen (Programme die intern mehrere Aufgaben parallel aufführen). Mit Hilfe eines Verweises (Referenz/Handle) auf ein Objekt dieser Klasse welcher an andere Objekte weitergegeben wird und dem Setzen eines Ereignisses durch einen Methodenaufruf des Event-Objektes können Informationen über einen Zustand eines Prozesses oder Programmfadens gesendet werden. Die in diesem Ausführungsbeispiel verwendeten Objekte der Klasse Event werden in einem 'automatisch rücksetzenden'-Modus verwendet. Das bedeutet, daß nach einem erfolgreichen Warten (der Programmfluß wird an einer definierten Stelle gestoppt, bis ein bestimmtes Ereignis 'gesetzt' wurde) der Zustand des Event-Objektes auf 'rückgesetzt' gesetzt wird. Diese Klasse ist Bestandteil von den meisten C++-Bibliotheken. In einigen Bibliotheken wird sie auch als CEvent bezeichnet.
Der Typ CS beschreibt eine Klasse 161a, die innerhalb von Multithreading-Programmen verwendet wird, um zu gewährleisten, daß bestimmte Programmabschnitte (unteilbare Abschnitte, Critical Sections) nur von einem Programmfaden (Thread) zur gleichen Zeit betreten und ausgeführt werden können. Versuchen weitere Programmfäden in einen, mit einem Objekt der Klasse CS geschützten, Programmabschnitt einzutreten, werden diese angehalten, bis der Programmfaden, der sich innerhalb des geschützten Programmabschnittes befindet, diesen wieder verlassen hat. Diese Klasse ist Bestandteil von den meisten C++-Bibliotheken. In einigen Bibliotheken wird sie auch als CriticalSection bezeichnet.
Im nachfolgenden werden die speziellen Typen, die für die Steuerungssoftware verwendet werden beschrieben.
Spezielle Typen Enumerator BOOL
Der Typ BOOL ist ein Aufzählungstyp und beschreibt zwei mögliche Zustände. Der C++ Enumerator folgt:
NEIN - beschreibt, daß eine Aussage verneint wird.
JA - beschreibt, daß eine Aussage bejaht wird.
Enumerator STATUS
Der Typ STATUS ist ein Aufzählungstyp und beschreibt die möglichen Antworten, die die einzelnen Methodenaufrufe als Rückgabewerte zurückgeben können, und die internen Zustände von Objekten.
Der C++ Enumerator folgt:
BEREIT - die Einheit ist bereit.
BESCHÄFTIGT - die Einheit ist beschäftigt.
LEER - es gibt keine Benachrichtigungsauftäge mehr.
GEFUNDEN - es wurde ein passender Benachrichtigungsauftrag gefunden.
NICHT_GEFUNDEN ⁹⁹⁹⁹⁹ ⁰⁰⁰⁷⁰ ⁵⁵² ⁰⁰¹⁰⁰⁰²⁸⁰⁰⁰⁰⁰00200012000285919988800040 0002019835092 00004 99880ä es wurde kein passender Benachrichtigungsauftrag gefunden.
GLEICHER_SCHLÜSSEL - der übergebende Schlüssel ist mit dem eigenen Schlüssel identisch.
NICHT_GLEICHER_SCHLÜSSEL - der übergebende Schlüssel ist mit dem eigenen Schlüssel nicht identisch.
Enumerator GERÄTE_ART
Der Typ GERÄTE_ART ist ein Aufzählungstyp und beschreibt den zu verwendenden Gerätetyp.
Der C++ Enumerator folgt:
FON - die Geräteart ist ein Gerät zum Versenden einer Nachricht an ein Telefon.
FAX - die Geräteart ist ein Gerät zum Versenden einer Nachricht an ein Fax-Gerät.
PAGER - die Geräteart ist ein Gerät zum Versenden einer Nachricht an ein Pager-Gerät.
SMS - die Geräteart ist ein Gerät zum Versenden einer Nachricht an ein Handy das SMS (Small Message System) unterstützt.
E_MAIL - die Geräteart ist ein Gerät zum Versenden einer Nachricht an ein E-Mail (Elektronischer Post) fähiges Gerät.
ERWEITERT - die zu verwendende Geräteart ist ein beliebiges dem System hinzufügbares Kommunkationsgerät.
Enumerator TAG
Der Typ TAG ist ein Aufzählungstyp und beschreibt eine Wochentag. Der C++ Enumerator folgt:
MO - beschreibt den Wochentag Montag
DI - beschreibt den Wochentag Dienstag
MI - beschreibt den Wochentag Mittwoch
DO - beschreibt den Wochentag Donnerstag
FR - beschreibt den Wochentag Freitag
SA - beschreibt den Wochentag Samstag
SO - beschreibt den Wochentag Sonntag
Im nachfolgenden werden die Strukturen (Klassen ohne Methoden), die für die Steuerungssoftware verwendet werden beschrieben.
Strukturen Struktur Benachrichtigungs_parameter
Die Struktur Benachrichtigungs_parameter 165 beschreibt alle zum einen Verbindungsaufbau nötigen Daten inklusive der zeitlichen Einschränkungen und weiterer Informationen.
Die C++ Struktur folgt:
datum_begin - beschreibt als 8-stellige Zahl der Form 'ttmmjjjj', t-Tag, m-Monat, J-Jahr, das Datum an dem frühestens ein Benachrichtigungsversuch unternommen werden soll.
datum_ende - beschreibt als 8-stellige Zahl der Form 'ttmmjjjj',t-Tag, m-Monat, J-Jahr, das Datum bis zu dem ein Benachrichtigungsversuch unternommen werden soll.
tag_begin - beschreibt den ersten Wochentag an mit dem Benachrichtigungsversuch begonnen werden soll.
tag_ende - beschreibt den letzten Wochentag bis zu dem ein Benachrichtigungsversuch unternommen werden soll.
zeit_begin - beschreibt als 4-stellige Zahl der Form 'ssmm', s-Stunde, m-Minute, die Zeit an dem frühestens ein Benachrichtigungsversuch unternommen werden soll.
zeit_ende - beschreibt als 4-stellige Zahl der Form 'ssmm', s-Stunde, m-Minute, die Zeit bis zu der ein Benachrichtigungsversuch unternommen werden soll.
priorität - gibt die Priorität einer instantiierten Struktur Benachrichtigungsparameter gegenüber anderen instantiierten Strukturen Benachrichtigungsparameter an, innerhalb einer definierten Menge von Benachrichtigungsparameter Objekten. Dies ermöglicht dem zu Benachrichtigenden eine Abfolge der Benachrichtigungsversuche in Bezug auf die Adressen festzulegen. Die Zahl '1' entspricht der höchsten Priorität, alle anderen Zahlen sind entsprechend ihres Wertes geringerer Priorität.
intervall_benachrichtigungs_versuch - beschreibt die Dauer in Minuten, die zwischen zwei Benachrichtigungsversuchen liegen soll.
countdown_benachrichtigungs_versuch - beschreibt die aktuell noch verbleibende Zeit in Minuten bis zum nächsten Benachrichtigungsversuch.
geräte_art - beschreibt die mit der 'adresse' zu verwendende Geräteart.
adresse - beschreibt die Zieladresse eines Benachrichtigungsversuches. Da der Datentyp für die Aufnahme von Textdaten ausgelegt ist, können hier sowohl Telefonnummern als auch E-Mail-Adressen und weitere Formate gespeichert werden.
zeitlimit - beschreibt die maximale Zeitdauer in Sekunden eines einzelnen Benachrichtigungsversuches, wobei hier die Dauer des Warten auf eine Reaktion (Abheben, Gerät einschalten, . .) des zu Benachrichtigenden verstanden wird.
Struktur Benachrichtigungs_parameter_gerät
Die Struktur Benachrichtigungs_parameter_gerät 167 beschreibt die für ein Kommunikationsgerät notwendigen Daten zum Senden einer Benachrichtigung und zusätzliche Verwaltungsinfomationen.
Die C++ Struktur folgt:
schlüssel - ist eine Verwaltungsinformation und beschreibt eine Gruppe von Strukturen des Typs Benachrichtigungs_parameter (zu Benachrichtigender hat mehrere Zeiträume und/oder Adressen angegeben), die Verwaltungsinformation dient im Falle eines erfolgreichen Vermittlungsversuches zum Auffinden dieser Gruppe und anschließender Entfernung aus der Liste der Benachrichtigungsaufträge.
adresse - beschreibt die Zieladresse eines Benachrichtigungsversuches. Da der Datentyp für die Aufnahme von Textdaten ausgelegt ist, können hier sowohl Telefonnummern als auch E-Mail-Adressen und weitere Formate gespeichert werden.
zeitlimit - beschreibt die maximale Zeitdauer in Sekunden eines einzelnen Benachrichtigungsversuches, wobei hier die Dauer des Warten auf eine Reaktion (Abheben, Gerät einschalten, . .) des zu Benachrichtigenden verstanden wird, die Struktur kann aber auch um die aufgezählten Unterteilungen erweitert werden.
benachrichtigung - referenziert die zu versendende Nachricht in Form eines Dateipfades und des Dateinamens. Die zu versendenen Daten befinden sich in der referenzierten Datei.
Struktur Registrierungs_eintrag
Die Struktur Registrierungs_eintrag 163 beschreibt eine Referenz auf ein Event-Objekt. Die Referenz wird verweist auf ein Event-Objekt eines Objektes der Klasse Gerät. Hierdurch ist es einem Objekt der Klasse Benachrichtigungskern_einheit möglich alle registrierten Objekte der Klasse Gerät zu informieren, daß sich die Objekte der Klasse Gerät um einen Auftrag bei einem Objekt der Klasse Benachrichtigungskern_einheit bewerben können.
Die C++ Struktur folgt:
referenz_ev_auftragsanforderung_starten - ist eine Referenz auf ein Objekt der Klasse Event, welches einem Objekt der Klasse Gerät zugehörig ist und dient der Kommunikation zwischen den Objekten der Klasse Benachrichtigungskern_einheit und der Klasse Gerät.
Im nachfolgenden werden die Klassen, die für die Steuerungssoftware verwendet werden beschrieben.
Klasse Benachrichtigungskern_einheit
Die Klasse Benachrichtigungskern_einheit 160 ist die zentrale Klasse in dem automatischen Benachrichtigungssystem, sie dient zudem als Schnittstellenklasse für die übrigen Einheiten des Vermittlungsautomaten in Form der Methoden übernehme_benachrichtigungs_auftrag() und entferne_benachrichtigungs_auftrag(). Die Klasse dient als zentrale Steuerung für die ihr zugeordneten Objekte deren Vaterklasse die Klasse Gerät ist. Die Klasse Benachrichtigungskern_einheit steuert den zeitlichen Ablauf der Benachrichtigungsversuche und versucht Anfragen nach passenden Aufträgen zu erfüllen.
Die Methode Benachrichtigungskern_einheit() ist ein Konstruktor und initialisiert ein Benachrichtigungskern_einheit-Objekt.
Die Methode Benachrichtigungskern_einheit() ist ein Destruktor und deinitialisiert ein Benachrichtigungskern_einheit-Objekt.
Die Methode übernehme_benachrichtigungs_auftrag() übergibt dem Benachrichtigungskern_einheit-Objekt einen Auftrag für die Benachrichtigung einer Person, in diesem Aufführungsbeispiel anhand eines Schlüssels auf einen Eintrag in der Datenbanktabelle T_Benachrichtigung_Kopf 708.
Die Methode entferne_benachrichtigungs_auftrag() dient zur Rücknahme eines Auftrages zur Benachrichtigung einer Person.
Die Methode suche_passenden_auftrag() fragt in der Liste m_liste_aufträge die vorhandenen Benachrichtigungs_auftrag-Objekte nach einem passenden Auftrag ab.
Die Methode benachrichtigungs_versuch_beendet() informiert ein in der Liste m_liste_benachrichtgungs_auftrag vorhandenes Benachrichtigungs_auftrag-Objekt von der Beendigung des von dem Benachrichtigungs_auftrag-Objekt vergebenen Auftrages.
Die Methode m_programmfaden_benachrichtigungskern_einheit() wird von dem Konstruktor als separater Programmfaden, im Sinne einer Parallelverarbeitung (Multithreading), aufgerufen.
Die Methode m_geräte_anstossen() wird zum Anstoßen aller registrierten Objekte der Klasse Gerät verwendet und verwendet die Liste m_liste_registrierung.
Die Methode m_aufträge_rücksetzen() wird zum Rücksetzen aller Aufträge die in der Liste m_liste_aufträge vorhanden sind verwendet. Der Methode wird als Argument die Delta_Zeit übergeben, die bestimmt wieviel Zeit, seit dem letzten Aufruf der Methode m_geräte_rücksetzen(), vergangen ist.
Das Attribut m_liste_aufträge speichtert alle Benachrichtigungs_auftrag-Objekte.
Das Attribut m_liste_registrierung speichert die Referenzen auf Event-Objekte von registrierten Objekten mit Hilfe von Registrierungs_eintrag-Objekten.
Das Attribut m_ev_zeit ist ein Event (Ereignis)-Objekt, das mit einem Zeitgeber verknüpft ist und immer dann 'gesetzt' wird, wenn der Zeitgeber den Ablauf einer Zeitspanne anzeigt.
Das Attribut m_ev_leer ist ein Event (Ereignis)-Objekt, das signalisiert, daß die in der Liste m_liste_aufträge enthaltenden Benachrichtigung_auftrag-Objekte keine Aufträge mehr zu vergeben haben.
Das Attribut m_ev_beenden ist ein Event (Ereignis)-Objekt und wird verwendet, um den Programmfaden (Multithreading) m_programmfaden_benachrichtigungskern_einheit() zu beenden.
Das Attribut m_ev_beenden_ausgeführt ist ein Event (Ereignis)-Objekt und wird verwendet, um mitzuteilen, daß der Programmfaden (Multithreading) m_programmfaden_benachrichtigungskern_einheit() beendet ist.
Das Attribut m_ist_leer hat die gleiche semantische Bedeutung wie das Attribut m_ev_ist_leer.
Das Attribute m_unteilbarer_abschnitt ist vom Typ CS (Critical Section) und wird verwendet, um zu gewährleisten, daß immer nur ein Programmfaden einen bestimmten Programmabschnitt betreten und ausführen kann.
Klasse Benachrichtigungs_auftrag
Die Klasse Benachrichtigungs_auftrag 164 dient als Aufnahmeobjekt für eine Menge von Benachrichtigungs_parameter-Objekten. Diese haben die Eigenschaft, daß diese verschiedene Zeiten und/oder Ziele von einem einzigen Benachrichtigungsauftrag sind. Die Masse Benachrichtigungs_auftrag modelliert somit die Menge der Angaben einer zu benachrichtigenden Person in Bezug auf die automatische Benachrichtigung, die sich unter anderem aus unterschiedlichen Zeitangaben, Wochentagsangaben und Zieladressen (Telefonnummern, Faxnummern, Pagernummern, E-Mailadressen, und weiteren) zusammensetzen kann. Eine der wesentlichen Aufgaben der Klasse Benachrichtigungs_auftrag ist es durch die Methode suche_passenden_auftrag() einen geeigneten Auftrag für ein anfragendes Gerät-Objekt zu ermitteln.
Die Methode Benachrichtigungs_auftrag() ist ein Konstruktor und initialisiert ein Benachrichtigungs_auftrag-Objekt. Dies geschieht in diesem Ausführungsbeispiel durch Auslesen aller Daten aus der Datenbank, die mit dem übergebenen Schlüsselwert in Beziehung stehen sowie den davon abhängigen Daten. Hierdurch werden die entsprechenden Einträge aus den Datenbanktabellen T_Benachrichtigungs_Kopf 708 und T_Benachrichtigungs_Adresse 709 ausgelesen. Aus den einzelnen Einträgen der Datenbanktabelle Benachrichtigungs_adresse werden korrespondierende Benachrichtigungs_parameter-Objekte erzeugt, die dann in die Liste m_liste_parameter entsprechend ihrer Priorität aufgenommen werden.
Die Methode ~Benachrichtigungs_auftrag() ist ein Destruktur und löscht alle Objekte in der Liste m_liste_parameter sowie das Objekt Benachrichtigungs_auftrag selbst.
Die Methode suche_passenden_auftrag() durchsucht die Liste m_liste_parameter nach einem passendem Auftrag für ein indirekt anfragendes Gerät-Objekt.
Die Methode benachrichtigungs_versuch_beendet() wird indirekt von einem Gerät- Objekt aufgerufen und teilt einem Benachrichtigungs_auftrag-Objekt mit, daß der von ihm vergebenen Auftrag beendet wurde.
Die Methode rücksetzen() teilt den Benachrichtigungs_auftrag-Objekt mit das bei den nächsten Aufruf der Methode suche_passenden_auftrag() wieder am Anfang der Liste gesucht werden soll und teilt den Objekt mit wieviel Zeit, seit dem letzten Aufruf der Methode rücksetzen(), vergangen ist.
Die Methode gebe_schlüssel() gibt den, in dem Attribut m_schlüssel gespeicherten, Schlüssel für den Bezug zu einem Eintrag T_benachrichtigungs_kopf 708 in der Datenbank zurück.
Das Attribut m_liste_parameter speichert alle zu den Benachrichtigungs_auftrag-Objekt zugehörigen Benachrichtigungs_parameter-Objekte.
Das Attribut m_status speichtet den aktuellen Status des Objektes.
Das Attribut m_aktueller_index bezeichnet die logische Position in der Liste m_liste_parameter.
Das Attribut m_zeit_inkrement speichert wieviel Zeit, seit dem letzten Aufruf der Methode rücksetzen(), vergangen ist.
Das Attribut m_schlüssel speichert einen Schlüssel auf einen Eintrag aus der Datenbanktabelle vom Typ T_Benachrichtigungs_Kopf 708.
Das Attribut m_benachrichtigung referenziert die zu versendende Nachricht im Form eines Dateipfads und Dateinamens. Die zu versendenden Daten befinden sich in der referenzierten Datei.
Klasse Gerät
Die Klasse Gerät 166 ist eine abstrakte Klasse, im objektorientierten Sinne und speziell von der Programmiersprache C++, und dient in dieser Ausprägung als Vaterklasse. Hierdurch wird erreicht, daß die Struktur des Systems leicht für beliebige Kommunikationsgeräte erweiterbar ist. Alle Geräte müssen für ihre Geräteart eine Klasse einbringen, die von der abstrakten Klasse Gerät im objektorientierten Sinne geerbt hat (Sohnklasse). Hierdurch erhalten alle Geräte-Unterklassen die gleiche Methoden- Schnittstelle, die es der Klasse Benachrichtigungskern_einheit ermöglicht alle unterschiedlichen Gerätearten in gleicher Weise zu handhaben.
Die Methode Gerät() ist ein Konstruktor und übernimmt eine Referenz auf ein Objekt der Klasse Benachrichtigungskern_einheit und speichert diese Referenz, für ein späteres Senden von Nachrichten an das referenzierte Objekt im C++ Sinn. Der Konstruktor Gerät() wird im Konstruktor einer von der Klasse Gerät abgeleiteten Klasse verwendet.
Die Methode ~Gerät() ist ein Destruktor und wird im Destruktor einer von der Klasse Gerät abgeleiteten Klasse verwendet.
Die Methode gebe_event_referenz() gibt eine Referenz von dem Attribut-Objekt m_ev_auftragsanforderung_starten der Klasse Event an den Aufrufer zurück. Das Aufrufendende Objekt ist ein Objekt der Klasse Benachrichtigungskern_einheit. Hiermit ist es den Benachrichtigungskern_einheit-Objekt möglich, durch aktivieren (setzen) des durch die Referenz bezeichneten Event-Objektes, einem Objekt der Klasse Gerät mitzuteilen, daß es jetzt versuchen kann sich bei dem Benachrichtigungskern_einheit- Objekt um einen Auftrag zu bewerben.
Die Methode m_programmfaden_gerät() wird im Konstruktor einer von der Klasse Gerät abgeleiteten Klasse aufgerufen. Die Methode wird als separater Programmfaden, im Sinne einer Parallelverarbeitung (Multithreading), abgearbeitet.
Die Methode m_beende_programmfaden_gerät() wird von dem Destruktor einer abgeleiteten Klasse zum Beenden des Programmfadens m_programmfaden_gerät() aufgerufen.
Die virtuelle Methode m_versuche_benachrichtigung() wird von einer Klasse, die von der Klasse Gerät abgeleitet ist, implementiert. In der Methode muß versucht werden mit Hilfe der übergebenen Struktur Benachrichtigungs_parameter_gerät die darin referenzierten Daten an die ebenfalls in der Struktur Benachtigungs_parameter_gerät enthaltenen Adresse zu senden. In der Methode selbst oder mit Hilfe von separaten Methoden werden die in der Struktur Benachrichtigungs_parameter_gerät referenzierten Daten, falls nicht schon in entsprechender Form vorliegend (erkennbar am Postfix des vollständigen Dateinamens als auch an internen Kennungen innerhalb der Datei), in eine für das Gerät geeignete Form gebracht. Dies kann z. B. ein temporäre Transformation einer Textdatei in eine Audiodatei mittels Sprachsynthese sein. Die so transformierte Datei wird dann mittels eines VoiceModems oder einem anderen geeigneten Gerät versendet, und kann damit von einem Menschen, der den Benachrichtigungsruf entgegennimmt direkt verstanden werden. Es sind beliebig viele Formen möglich, so unter anderem ein Format zum Senden an ein Pager und anderen geeigneten Empfangseinrichtungen. Der Inhalt der Benachrichtigung enthält nähere Informationen über das auslösende Ereignis (z. B. Interessent hat Nachricht hinterlassen oder Rückantwort auf eigene Nachricht ist eingegangen), kann aber auch falls erwünscht nur statische Informationen beinhalten. Der Erfolg (Verbindung konnte hergestellt und die Nachricht vollständig übertragen werden) oder Mißerfolg des Benachrichtigungsversuches wird durch den Rückgabewert des der Methode angezeigt.
Die virtuelle Methode m_gebe_geräte_art() wird von den von der Klasse Gerät abgeleiteten Klassen implementiert. In der Methode muß die Geräteart der abgeleiteten Klasse als Rückgabewert zurückgegeben werden.
Das Attribut_m_ref_benachrichtigungskern_einheit speichert eine Referenz auf ein Objekt der Klasse Benachrichtigungskern_einheit, welches als Ziel für den Methodenaufruf Benachrichtigungskern_einheit::suche_passenden_auftrag() benötigt wird.
Das Attribut m_ev_auftragsanforderung_starten ist ein Event (Ereignis)-Objekt und wird verwendet um einem Objekt vom Typ Gerät mitzuteilen, daß das Objekt Gerät jetzt den Versuch unternehmen kann eine Anfrage, mittels des Methodenaufruf Benachrichtigungskern_einheit::suche_passenden_auftrag(), an ein Benachrichtigungskern_einheit-Objekt zur Erlangung eines Benachrichtigungsauftrages zu stellen.
Das Attribut m_ev_beenden ist ein Event (Ereignis)-Objekt und wird verwendet um einem Objekt, dessen Klasse vom der Klasse Gerät abgeleitet wurde, mitzuteilen, daß das Objekt jetzt den Programmfaden (Multithreading) m_programmfaden_gerät() zu beenden hat.
Das Attribut m_ev_beenden_ausgeführt ist ein Event (Ereignis)-Objekt und wird verwendet um einem Objekt, dessen Klasse vom Typ Gerät abgeleitet wurde, mitzuteilen, daß der Programmfaden (Multithreading) m_programmfaden_gerät() beendet ist.
von der Klasse Gerät abgeleitete Klassen
Die Klasse Gerät 166 ist eine abstrakte Klasse, im objektorientierten Sinne und speziell in der Programmiersprache C++, und dient in dieser Ausprägung als Vaterklasse. Hierdurch wird erreicht, daß die Struktur des Systems leicht für beliebige Kommunikationsgeräte erweiterbar ist. Alle Geräte müssen für ihre Geräteart eine Klasse einbringen, die von der abstrakten Klasse Gerät im objektorientierten Sinne geerbt hat (Sohnklasse). Hierdurch erhalten alle Geräte-Unterklassen die gleiche Methoden- Schnittstelle, die es der Klasse Benachrichtigungskern_einheit ermöglicht alle unterschiedlichen Gerätearten in gleicher Weise zu handhaben. Dies sind, in dieser beispielhaften Ausprägung, die Klassen Gerät_FON 168, Gerät_FAX 169, Gerät_PAGER 170, Gerät_SMS 171, Gerät_E_MAIL und Gerät_ALLG_KOMM.
Alle diese Klassen dienen für die spezielle Anpassung an die unterschiedlichen Protokolle für den Datentransport sowie für die Ansteuerung der unterschiedlichen Daten-Sende-und-Empfangs-Einrichtungen (Fig. 1b: 21, 24, 25, 26 und 27). Die einzelnen Klassen, die von der abstrakten Klasse Gerät abgeleitet sind, implementieren hierzu die virtuellen Methodenschnittstellen. Die Methode Gerät() ist ein Konstruktor und übernimmt eine Referenz auf ein Objekt der Klasse Benachrichtigungskern_einheit und speichert diese Referenz, für ein späteres Senden von Nachrichten an das referenzierte Objekt im C++ Sinn. Der Konstruktor Gerät wird im Konstruktor einer von der Klasse Gerät abgeleiteten Klasse verwendet.
Fig. 4b bis 4e beschreiben die Klasse Gerät 166 im Detail, mit Hilfe von Ablaufplänen für die Methoden (Funktionen) der Klasse. Methoden, die nur Werte von Attributen (Daten) der Klasse lesen oder schreiben, werden nicht explizit durch Ablaufpläne beschrieben. Alle benannten Parameter, Attribute (Variablen), Strukturen und Aufzählungen sind in der Beschreibung zur Fig. 4a, in den Klassendeklarationen und Typbeschreibungen im Detail ausgeführt. Außer den in der Fig. 4a in den Klassendeklarationsbeschreibungen aufgeführten Attributen (Variablen), werden in den folgenden Ablaufbeschreibungen auch automatische Variablen verwendet. Automatische Variablen werden als Zwischenspeicher für temporäre Berechnungen innerhalb der einzelnen Methoden verwendet.
Die Fig. 4b beschreibt die Methode Gerät::Gerät (Konstruktor) der Klasse Gerät 166. Die Methode beginnt mit dem Eingangsblock 200, dem als Aufrufparameter eine Referenz auf ein Objekt der Klasse Benachrichtigungskern_einheit 160 übergeben wird. Der Arbeitsablauf folgt dann dem Pfad 220 zum Block 201. Im Block 201 wird der übergebene Parameter dem Attribut_m_ref_benachrichtigungskern_einheit zugewiesen. Der Arbeitsablauf folgt dann dem Pfad 221 zum Block 202. Im Block 202 wird die Methode m_programmfaden_gerät als paralleler Programmfaden (Thread) gestartet. Der Arbeitsablauf folgt dann dem Pfad 222 zum Ausgangsblock 203, in dem die Methode Gerät::Gerät beendet wird.
Die Fig. 4c beschreibt die Methode Gerät::~Gerät (Destruktor) der Klasse Gerät 166. Die Methode beginnt mit dem Eingangsblock 204 der keine Operationen vornimmt. Der Arbeitsablauf folgt dann dem Pfad 223 zum Ausgangsblock 205, in dem die Methode Gerät::~Gerät beendet wird.
Die Fig. 4d beschreibt die Methode Gerät::m_beende_programmfaden_gerät der Klasse Gerät 166. Die Methode beginnt mit dem Eingangsblock 206. Der Arbeitsablauf folgt dann dem Pfad 224 zum Block 207. Im Block 207 wird das Attribut m_ev_beenden aktiv gesetzt. Der Arbeitsablauf folgt dann dem Pfad 225 zum Block 208. Im Block 208 wird solange gewartet, bis das Attribut m_ev_beenden_ausgeführt aktiviert wird. Dann folgt der Arbeitsablauf dem Pfad 226 zum Block 209, in dem die Methode Gerät::m_beende_programmfaden_gerät beendet wird.
Die Fig. 4e beschreibt die Methode Gerät::m_programmfaden_gerät der Klasse Gerät 166. Die Methode beginnt mit dem Eingangsblock 210, in diesem werden die automatischen Variablen parameter_gerät, vom Typ Benachrichtigungs_parameter_gerät 167, ist_auftrag_gefunden, vom Typ BOOL, ist_versuch_erfolgreich, vom Typ BOOL, und ref_event, vom Typ long, angelegt. Der Arbeitsablauf folgt dann dem Pfad 227 zum Block 211. Im Block 211 wird untersucht ob das Attribut m_ev_beenden aktiviert ist und das Ergebnis, in Form einer Kennung, in die automatische Variable m_ref_event gespeichert. Der Arbeitsablauf folgt dann dem Pfad 229 zum Entscheidungsblock 212. Im Block 212 wird geprüft, ob die automatische Variable m_ref_event eine Kennung von dem m_ev_beenden beinhaltet. Wenn ja (Block 212), folgt der Arbeitsablauf dem Pfad 234 zu Block 218. Im Block 218 wird das Attribut m_ev_beenden_ausgeführt aktiviert. Der Arbeitsablauf folgt dann dem Pfad 238 zum Ausgangsgangsblock 219, in dem die Methode Gerät::m_programmfaden_gerät beendet wird. Andererseits, wenn nein (Block 212), folgt der Arbeitsablauf dem Pfad 230 zum Block 213. Im Block 213 wird mit Hilfe des Attributes_m_ref_benachrichtigungskern_einheit die Methode Benachrichtigungskern_einheit::suche_passenden_auftrag der Klasse Benachrichtigungskern_einheit aufgerufen. Dem Methodenaufruf werden als Argumente die automatische Variable parameter_gerät und, mittels eines Aufrufes der virtuellen Methode m_gebe_geräte_art, ein Wert vom Typ GERÄTE_ART übergeben. Daran anschließend wird die automatische Variable ist_auftrag_gefunden mit dem Rückgabewert des Methodenaufrufes belegt. Der Arbeitsablauf folgt dann dem Pfad 231 zum Entscheidungsblock 214. Im Block 214 wird geprüft, ob der Wert der automatischen Variable ist_auftrag_gefunden gleich der Konstanten JA ist. Wenn ja (Block 214), folgt der Arbeitsablauf dem Pfad 232 zum Block 215. Im Block 215 wird versucht eine Meldung an die in der automatischen Variable (Struktur) parameter_gerät angegebenen Zieladresse zuzusenden. Hierzu ruft der Block die virtuelle Methode m_versuche_benachrichtigung mit der automatischen Variable parameter_gerät als Argument auf. Der Rückgabewert des Methodenaufrufes wird in die automatische Variable ist_versuch_erfolgreich geschrieben. Anschließend wird mit Hilfe des Attributes _m_ref_benachrichtigungskern_einheit die Methode Benachrichtigungs_einheit::benachrichtigungs_versuch_beendet der Klasse Benachrichtigungskern_einheit aufgerufen. Der Methode werden die automatischen Variablen parameter_gerät.schlüssel und ist_versuch_erfolgreich als Argumente übergeben. Der Arbeitsablauf folgt dann dem Pfad 228 zum oben beschriebenen Block 211. Andererseits, wenn nein (Block 214), folgt der Arbeitsablauf dem Pfad 233 zum Block 216. Im Block 216 wird solange gewartet bis einer der beiden Attribute m_ev_auftragsanforderung_starten oder m_ev_beenden aktiviert worden ist. Anschließen wird eine Kennung, die bestimmt welches der beiden Attribute aktiviert worden ist, in der automatischen Variablen ref_event gespeichert. Der Arbeitsablauf folgt dann dem Pfad 236 zum Entscheidungsblock 217: Im Block 217 wird geprüft, ob die Automatische Variable ref_event eine Kennung von dem Attribut m_ev_beenden beinhaltet. Wenn ja (Block 217), folgt der Arbeitsablauf dem Pfad 237, der in den Pfad 234 mündet, der zum oben beschriebenen Block 218 führt. Andererseits, wenn nein (Block 217), folgt der Arbeitsablauf dem Pfad 235, der in den Pfad 228 mündet, der zum oben beschriebenen Block 211 führt.
Fig. 4f bis 4j beschreiben die Klasse Benachrichtigungs_auftrag 164 im Detail, mit Hilfe von Ablaufplänen für die Methoden (Funktionen) der Klasse. Methoden, die nur Werte von Attributen (Daten) der Klasse lesen oder schreiben, werden nicht explizit durch Ablaufpläne beschrieben. Alle benannten Parameter, Attribute (Variablen), Strukturen und Aufzählungen sind in der Beschreibung zur Fig. 4a, in den Klassendeklarationen und Typbeschreibungen im Detail ausgeführt.
Die Fig. 4f beschreibt die Methode Benachrichtigungs_auftrag::Benachrichtigungs_auftrag (Konstruktor) der Klasse Benachrichtigungsauftrag 164. Die Methode beginnt mit dem Eingangsblock 339, dem als Aufrufparameter ein Wert vom Typ Long übergeben wird, der auf ein Datenbankeintrag aus der Tabelle T_Benachrichtigungs_kopf 708 verweist. Der Arbeitsablauf folgt dann dem Pfad 368 zum Block 340. In dem Block 340 wird der übergebene Parameter dem Attribut m_schlüssel zugewiesen, das Attribut m_status mit der Konstanten BEREIT beschrieben und das Attribut m_aktueller_index wird auf 0 gesetzt. Der Arbeitsablauf folgt dann dem Pfad 369 zum Block 341. Im Block 341 wird mit Hilfe des Attributes m_schlüssel der zugehörige Eintrag aus der Tabelle T_Benachrichtigungs_kopf 708 aus der Datenbank 33 gelesen. Anschließend wird aus dem ermittelten Eintrag der Wert dateireferenz_auf_zu_versendene_nachricht dem Attribut m_benachrichtigung zugewiesen. Der Arbeitsablauf folgt dann dem Pfad 370 zum Block 342. Im Block 342 werden mit Hilfe des Attributes m_schlüsssel und der Datenbank 33 alle dem ermittelten Eintrag zugeordneten Einträge aus der Tabelle T_Benachrichtigungs_adresse 709, geordnet nach dem Wert 'Priorität' ausgelesen. Für jeden dieser, aus der Datenbank ermittelten, Einträge wird eine Struktur Benachrichtigungs_parameter 165 erzeugt und die Werte mit den korrespondierenden Werten des Eintrages belegt sowie das Attribut countdown_benachrichtigungs_versuch mit dem Wert 0 beschrieben. Anschließend werden die Strukturen an das Ende der Liste (Attribut) m_liste_parameter angefügt. Der Arbeitsablauf folgt dann dem Pfad 371 zum Ausgangsblock 343, in dem die Methode Benachrichtigungs_auftrag::Benachrichtigungs_auftrag beendet wird.
Die Fig. 4g beschreibt die Methode Benachrichtigungs_auftrag::~Benachrichtigungs_auftrag (Destruktor) der Klasse Benachrichtigungsauftrag 164. Die Methode beginnt mit dem Eingangsblock 344. Der Arbeitsablauf folgt dann dem Pfad 372 zum Block 345. Im Block 345 werden alle Einträge in der Liste (Attribut) m_liste_parameter gelöscht. Der Arbeitsablauf folgt dann dem Pfad 373 zum Ausgangsblock 346, in dem die Methode Benachrichtigungs_auftrag::~Benachrichtigungs_auftrag beendet wird.
Die Fig. 4h beschreibt die Methode Benachrichtigungs_auftrag::benachrichtigungs_versuch_beendet der Klasse Benachrichtigungsauftrag 164. Die Methode beginnt mit dem Eingangsblock 347. Der Arbeitsablauf folgt dann dem Pfad 374 zum Block 348. Im Block 348 wird das Attribut m_status mit der Konstanten BEREIT belegt und das Attribut m_aktueller_index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 375 zum Ausgangsblock 349, im dem die Methode Benachrichtigungs_auftrag::benachrichtigungs_versuch_beendet beendet wird.
Die Fig. 41 beschreibt die Methode Benachrichtigungs_auftrag::rücksetzen der Klasse Benachrichtigungsauftrag 164. Die Methode beginnt mit dem Eingangsblock 350, dem als Argument ein Wert vom Typ long übergeben wird. Der Arbeitsablauf folgt dann dem Pfad 376 zu Block 350a. Im Block 350a wird das Attribut m_status mit der Konstanten BEREIT belegt, das Attribut m_aktueller_index mit dem Wert 0 belegt und das Attribut m_zeit_inkrement mit dem der Methode übergebenen Argument belegt. Der Arbeitsablauf folgt dann dem Pfad 376a zu Ausgangsblock 351, in dem die Methode Benachrichtigungs_auftrag::rücksetzen beendet wird.
Die Fig. 4j beschreibt die Methode Benachrichtigungs_auftrag::suche_passenden_auftrag der Klasse Benachrichtigungsauftrag 164. Die Methode beginnt mit dem Eingangsblock 352, dem als Argumente ein Wert vom Typ Referenz Benachrichtigungs_parameter_gerät 167 und ein Wert vom Typ GERÄTE_ART übergeben wird. Der Arbeitsablauf folgt dann dem Pfad 377 zum Entscheidungsblock 353. Im Block 353 wird geprüft, ob das Attribut m_status gleich der Konstanten BEREIT ist. Wenn nein (Block 353), folgt der Arbeitsablauf dem Pfad 378 zum Ausgangsblock 354, in dem die Methode Benachrichtigungs_auftrag::suche_passenden_auftrag beendet wird und das Attribut m_status als Rückgabewert übergeben wird. Andererseits, wenn ja (Block 353), folgt der Arbeitsablauf dem Pfad 379 zum Entscheidungsblock 355. Im Block 355 wird geprüft, ob das Attribut m_aktueller_index kleiner ist, als die maximale Anzahl der Einträge in der Liste (Attribut) m_liste_parameter. Wenn nein (Block 355), folgt der Arbeitsablauf dem Pfad 380 zum Block 356. Im Block 356 wird das Attribut m_status mit der Konstanten LEER belegt. Der Arbeitsablauf folgt dann dem Pfad 381 zu dem Ausgangsblock 357, in dem die Methode Benachrichtigungs_auftrag::suche_passenden_auftrag beendet wird und das Attribut m_status als Rückgabewert übergeben wird. Andererseits, wenn ja (Block 355), folgt der Arbeitsablauf dem Pfad 384 zum Entscheidungsblock 359. Im Block 359 wird überprüft, ob die Vorgaben (vom Benutzer definiertes zulässiges Benachrichtigungsfenster (Datum/Zeit)) im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Position m_aktueller_index befindet, durch Vergleich mit aktuellem Datum und aktueller Zeit, erfüllt werden. Wenn nein (Block 359), folgt der Arbeitsablauf dem Pfad 385 zum Block 358. Im Block 358 wird das Attribut countdown_benachrichtigungs_versuch im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Position m_aktueller_index befindet, mit dem Wert 0 belegt. Anschließend wird das Attribut m_aktueller_index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 383 zu oben beschriebenen Entscheidungsblock 355. Andererseits, wenn ja (Block 359), folgt der Arbeitsablauf dem Pfad 386 zum Entscheidungsblock 361. Im Entscheidungsblock 361 wird geprüft, ob das Attribut countdown_benachrichtigungs_versuch im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Postition m_aktueller_index befindet, gleich dem Wert 0 ist. Wenn nein (Block 361), folgt der Arbeitsablauf dem Pfad 387 zum Block 360. Im Block 360 wird das Attribut countdown_benachrichtigungs_versuch im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Postition m_aktueller_index befindet, um den Wert 1 dekrementiert. Der Arbeitsablauf folgt dann dem Pfad 388 zum Entscheidungsblock 363. Im Block 363 wird überprüft, ob das Attribut countdown_benachrichtigungs_versuch im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Postition m_aktueller_index befindet, gleich dem Wert 0 ist. Wenn nein (Block 363), folgt der Arbeitsablauf dem Pfad 389 zum Block 362. Im Block 362 wird das Attribut m_aktueller_index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 382, der in den Pfad 383 mündet, der zum oben beschriebenen Block 355 führt. Andererseits, wenn ja (Block 363), folgt der Arbeitsablauf dem Pfad 391, der in den Pfad 390 mündet, der zum nachfolgend beschriebenen Entscheidungsblock 364 führt. Andererseits, wenn ja (Block 361), folgt der Arbeitsablauf dem Pfad 390 zum Entscheidungsblock 364. Im Block 364 wird geprüft, ob das Attribut geräte_art im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Postition m_aktueller_index befindet befindet, gleich dem Wert ist, der als Argument vom Typ GERÄTE_ART der Methode Benachrichtigungs_auftrag::suche_passenden_auftrag übergeben wurde. Wenn nein (Block 364), folgt der Arbeitsablauf dem Pfad 392 zum Ausgangsblock 365, in dem die Methode Benachrichtigungs_auftrag::suche_passenden_auftrag beendet wird und die Konstante NICHT_GEFUNDEN als Rückgabewert übergeben wird. Andererseits, wenn ja (Block 364), folgt der Arbeitsablauf dem Pfad 393 zum Block 366. Im Block 366 wird der, als Argument der Methode Benachrichtigungs_auftrag::suche_passenden_auftrag, übergebene Wert vom Typ Referenz Benachrichtigungs_parameter_gerät 167 verwendet, um der damit referenzierten Struktur Benachrichtigungs_parameter_gerät 167 die korrespondierenden Werte des Attributes m_schlüssel und des Eintrages (adresse, zeitlimit, benachrichtigung), der sich in der Liste (Attribut) m_liste_parameter an der Position m_aktueller_index befindet, zuzuweisen. Anschließend, wird im Eintrag, der sich in der Liste (Attribut) m_liste_parameter an der Postition m_aktueller_index befindet, das Attribut countdown_benachrichtigungs_versuch mit dem Attribut intervall_benachrichtigungs_versuch reinitialisiert. Abschließend, wird das Attribut m_status mit der Konstanten BESCHÄFTIGT belegt. Der Arbeitsablauf folgt dann dem Pfad 394, der zu Ausgangsblock 367 führt, in dem die Methode Benachrichtigungs_auftrag::suche_passenden_auftrag beendet wird und die Konstante GEFUNDEN als Rückgabewert übergeben wird.
Fig. 4k bis 4q beschreiben die Klasse Benachrichtigungskern_einheit 160 im Detail, mit Hilfe von Ablaufplänen für die Methoden (Funktionen) der Klasse. Methoden, die nur Werte von Attributen (Daten) der Klasse lesen oder schreiben, werden nicht explizit durch Ablaufpläne beschrieben. Alle benannten Parameter, Attribute (Variablen), Strukturen und Aufzählungen sind in der Beschreibung zur Fig. 4a, in den Klassendeklarationen und Typbeschreibungen im Detail ausgeführt. Außer den in der Fig. 4a in den Klassendeklarationsbeschreibungen aufgeführten Attributen (Variablen), werden in den folgenden Ablaufbeschreibungen auch automatische Variablen verwendet. Automatische Variablen werden als Zwischenspeicher für temporäre Berechnungen innerhalb der einzelnen Methoden verwendet.
Die Fig. 4k beschreibt die Methode Benachrichtigungskern_einheit::Benachrichtigungskern_einheit (Konstruktor). Die Methode beginnt mit dem Eingangsblock 295. Der Arbeitsablauf folgt dann dem Pfad 345 zum Block 296. Im Block 296 wird für jedes real vorhandenes Gerät eine Objekt der Klasse Gerät_FON (168), Gerät_FAX (169), Gerät_PAGER (170), Gerät_SMS (171), Gerät_E_MAIL (172) oder Gerät_ALLG_KOMM (173) erzeugt, hierbei können Objekte gleichen Typs mehrfach vorhanden sein. Durch den Konstruktor der entsprechenden Klasse wird für jedes Gerät ein eigener Programmfaden (Thread) angelegt. Der Arbeitsablauf folgt dann dem Pfad 346 zum Block 297. Im Block 297 wird die Methode Benachrichtigungskern_einheit::m_programmfaden_benachrichtigung als paralleler Programmfaden (Thread) gestartet. Der Arbeitsablauf folgt dann dem Pfad 347 zum Ausgangsblock 298, in dem die Methode Benachrichtigungskern_einheit::Benachrichtigungskern_einheit beendet wird.
Die Fig. 41 beschreibt die Methode Benachrichtigungskern_einheit::~ Benachrichtigungskern_einheit (Destruktor). Die Methode beginnt mit dem Eingangsblock 299. Der Arbeitsablauf folgt dann dem Pfad 348 zum Block 300. Im Block 300 wird das Attribut m_ev_beenden aktiviert. Der Arbeitsablauf folgt dann dem Pfad 349 zu Block 301. Im Block 301 wird solange gewartet, bis das Attribut m_ev_beenden_ausgeführt aktiviert wird. Der Arbeitsablauf folgt dann dem Pfad 350 zum Block 302. Im Block 302 werden die Elemente der Liste (Attribut) m_liste_registrierung gelöscht. Der Arbeitsablauf folgt dann dem Pfad 351 zum Block 303. Im Block 303 werden die im Konstruktor Benachrichtigungskern_einheit::Benachrichtigungskern_einheit erzeugten Objekte der Klasse Gerät_FON (168), Gerät_FAX (169), Gerät_PAGER (170), Gerät_SMS (171), Gerät_E_MAIL (172) oder Gerät_ALLG_KOMM (173) gelöscht. Der Arbeitsablauf folgt dann dem Pfad 352 zum Block 304. Im Block 304 werden die Elemente der Liste (Attribut) m_liste_aufträge gelöscht. Der Arbeitsablauf folgt dann dem Pfad 353 zum Ausgangsblock 305, in dem die Methode Benachrichtigungskern_einheit::~ Benachrichtigungskern_einheit beendet wird.
Die Fig. 4m beschreibt die Methode Benachrichtigungskern_einheit::übernehme_benachrichtigungsauftrag. Die Methode beginnt mit dem Eingangsblock 306, dem als Aufrufparameter ein Wert vom Typ long übergeben wird. Der Arbeitsablauf folgt dann dem Pfad 354 zum Block 307. Im Block 307 wird mittels dem Attribut m_unteilbarer_abschnitt ein unteilbarer Abschnitt (Critical Section) begonnen: Der Arbeitsablauf folgt dann dem Pfad 355 zum Block 308. Im Block 308 wird ein neues Objekt der Klasse Benachrichtigungs_auftrag 164, mit dem im Eingangsblockes 306 übergebenen Aufrufparameter als Argument, erzeugt. Dieses Objekt wird dann an in die Liste (Attribut) m_liste_aufträge eingefügt. Der Arbeitsablauf folgt dann dem Pfad 356 zum Block 309. Im Block 309 wird mittels dem Attribut m_unteilbarer_abschnitt der unteilbare Abschnitt (Critical Section) wieder verlassen. Der Arbeitsablauf folgt dann dem Pfad 357 zum Ausgangsblock 310, in dem die Methode Benachrichtigungskern_einheit::übernehme_benachrichtigungsauftrag beendet wird.
Die Fig. 4n beschreibt die Methode Benachrichtigungskern_einheit::benachrichtigungs_auftrag_beendet. Die Methode beginnt mit dem Eingangsblock 311, dem als Aufrufparameter ein Wert von Typ long und ein Wert von Typ BOOL übergeben wird, außerdem werden die automatischen Variablen anzahl, schlüssel und index, vom Typ long, angelegt. Der Arbeitsablauf folgt dann dem Pfad 358 zum Block 312. Im Block 312 wird mittels dem Attribut m_unteilbarer_abschnitt ein unteilbarer Abschnitt (Critical Section) begonnen. Der Arbeitsablauf folgt dann dem Pfad 359 zum Block 313. Im Block 313 wird die automatische Variable anzahl mit der Anzahl der Elemente der Liste (Attribut) m_liste_aufträge belegt und die automatische Variable index mit 0 belegt. Der Arbeitsablauf folgt dann dem Pfad 360 zum Entscheidungsblock 314. Im Block 314 wird geprüft, ob die automatische Variable index kleiner ist als die automatische Variable anzahl. Wenn nein (Block 314), folgt der Arbeitsablauf dem Pfad 361 zum Block 320. Im Block 320 wird mittels dem Attribut m_unteilbarer_abschnitt der unteilbare Abschnitt (Critical Section) wieder verlassen. Der Arbeitsablauf folgt dann dem Pfad 370 zum Ausgangsblock 321, in dem die Methode Benachrichtigungskern_einheit::benachrichtigungs_auftrag_beendet beendet wird. Anderseits, wenn ja (Block 314), folgt der Arbeitsablauf dem Pfad 362 zum Block 315. Im Block 315 wird dem Eintrag, der sich in der Liste (Attribut) m_liste_aufträge an der Position index befindet, die Methode Benachrichtigungs_auftrag::gebe_schlüssel zugesandt und anschließend der Rückgabewert dieses Aufrufes der automatischen Variablen schlüssel zugewiesen. Der Arbeitsablauf folgt dann dem Pfad 363 zum Entscheidungsblock 316. Im Block 316 wird geprüft, ob der Wert, der automatischen Variablen schlüssel gleich dem Wert ist, der im Eingangsblock 311 als Argument vom Typ long übergeben wurde. Wenn nein (Block 316), folgt der Arbeitsablauf dem Pfad 364 zum Block 314a. Im Block 314a wird die automatische Variable index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 364a zum oben beschriebenen Block 314. Anderseits, wenn ja (Block 316), folgt der Arbeitsablauf dem Pfad 365 zum Block 317. Im Block 317 wird dem Eintrag, der sich in der Liste (Attribut) m_liste_aufträge an der Position index befindet, die Methode Benachrichtigungs_auftrag::benachrichtigungs_versuch_beendet zugesandt. Der Arbeitsablauf folgt dann dem Pfad 366 zum Entscheidungsblock 318. Im Block 318 wird geprüft, ob der Wert, der im Eingangsblock 311 als Argument vom Typ BOOL übergeben wurde, gleich der Konstanten JA ist. Wenn nein (Block 318), folgt der Arbeitsablauf dem Pfad 367, der in den Pfad 364 mündet, der zum oben beschriebenen Block 314a führt. Anderseits, wenn ja (Block 318), folgt der Arbeitsablauf dem Pfad 368 der zum Block 319 führt. Im Block 319 wird das Objekt aus der Liste (Attribut) m_liste_aufträge an der Position index entfernt. Der Arbeitsablauf folgt dann dem Pfad 369, der in den Pfad 367 mündet, der in den Pfad 364 mündet, der zum oben beschriebenen Block 314a führt.
Die Fig. 40 beschreibt die Methode Benachrichtigungskern_einheit::entferne_benachrichtigungs_auftrag. Die Methode beginnt mit dem Eingangsblock 322, dem als Aufrufparameter ein Wert von Typ long und ein Wert von Typ BOOL übergeben wird, außerdem werden die automatischen Variablen anzahl, schlüssel und index, vom Typ long, angelegt. Der Arbeitsablauf folgt dann dem Pfad 371 zum Block 323. Im Block 323 wird mittels dem Attribut m_unteilbarer_abschnitt ein unteilbarer Abschnitt (Critical Section) begonnen. Der Arbeitsablauf folgt dann dem Pfad 372 zum Block 324. Im Block 324 wird die automatische Variable anzahl mit der Anzahl der Elemente der Liste (Attribut) m_liste_aufträge belegt und die automatische Variable index mit 0 belegt. Der Arbeitsablauf folgt dann dem Pfad 373 zum Entscheidungsblock 325. Im Block 325 wird geprüft, ob die automatische Variable index kleiner ist als die automatische Variable anzahl. Wenn nein (Block 325), folgt der Arbeitsablauf dem Pfad 374 zum Block 330. Im Block 330 wird mittels dem Attribut m_unteilbarer_abschnitt der unteilbare Abschnitt (Critical Section) wieder verlassen. Der Arbeitsablauf folgt dann dem Pfad 381 zum Ausgangsblock 331, in dem die Methode Benachrichtigungskern_einheit::entferne_benachrichtigungs_auftrag beendet wird. Anderseits, wenn ja (Block 325), folgt der Arbeitsablauf dem Pfad 375 zum Block 326. Im Block 326 wird dem Eintrag, der sich in der Liste (Attribut) m_liste_aufträge an der Position index befindet, die Methode Benachrichtigungs_auftrag::gebe_schlüssel zugesandt und anschließend der Rückgabewert dieses Aufrufes der automatischen Variablen schlüssel zugewiesen. Der Arbeitsablauf folgt dann dem Pfad 376 zum Entscheidungsblock 327. Im Block 327 wird geprüft, ob der Wert, der automatischen Variablen schlüssel gleich dem Wert ist, der im Eingangsblock 322 als Argument vom Typ long übergeben wurde. Wenn nein (Block 327), folgt der Arbeitsablauf dem Pfad 377 zum nachfolgend beschriebenen Block 329. Anderseits, wenn ja (Block 327), folgt der Arbeitsablauf dem Pfad 378 zum Block 328. Im Block 328 wird das Objekt aus der Liste (Attribut) m_liste_aufträge an der Position index entfernt. Der Arbeitsablauf folgt dann dem Pfad 379 zum Block 329. Im Block 329 wird die automatische Variable index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 380 zum oben beschriebenen Block 325.
Die Fig. 4p beschreibt die Methode Benachrichtigungskern_einheit::m_geräte_anstoßen. Die Methode beginnt mit dem Eingangsblock 332, in dem die automatischen Variablen anzahl, ref_event und index, vom Typ long, angelegt werden. Der Arbeitsablauf folgt dann dem Pfad 382 zum Block 333. Im Block 333 wird die automatische Variable anzahl mit der Anzahl der Elemente der Liste (Attribut) m_liste_registrierungen belegt und die automatische Variable index mit 0 belegt. Der Arbeitsablauf folgt dann dem Pfad 383 zum Entscheidungsblock 334. Im Block 334 wird geprüft, ob die automatische Variable index kleiner ist als die automatische Variable anzahl. Wenn nein (Block 334), folgt der Arbeitsablauf dem Pfad 384 zum Ausgangsblock 335, in dem die Methode Benachrichtigungskern_einheit::m_geräte_anstoßen beendet wird. Anderseits, wenn ja (Block 334), folgt der Arbeitsablauf dem Pfad 385 zum Block 336. Im Block 336 wird das Attribut referenz_ev_auftragsanforderung_starten des Eintrages, der sich in der Liste (Attribut) m_liste_registrierungen an der Position index befindet, der automatischen Variablen ref_event zugewiesen. Der Arbeitsablauf folgt dann dem Pfad 386 zum Block 337. Im Block 337 wird das Ereignis (Event), daß die automatische Variable ref_event referenziert, aktiviert. Der Arbeitsablauf folgt dann dem Pfad 387 zum Block 338. Im Block wird die automatische Variable index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 388 zum oben beschriebenen Block 334.
Die Fig. 4q beschreibt die Methode Benachrichtigungskern_einheit::m_aufträge_zurücksetzen. Die Methode beginnt mit dem Eingangsblock 339, dem als Aufrufparameter ein Wert vom Typ long übergeben wird, außerdem werden die automatischen Variablen anzahl und index, vom Typ long, angelegt werden. Der Arbeitsablauf folgt dann dem Pfad 389 zum Block 340. Im Block 340 wird die automatische Variable anzahl mit der Anzahl der Elemente der Liste (Attribut) m_liste_aufträge belegt und die automatische Variable index mit 0 belegt. Der Arbeitsablauf folgt dann dem Pfad 390 zum Entscheidungsblock 342. Im Block 342 wird geprüft, ob die automatische Variable index kleiner ist als die automatische Variable anzahl. Wenn nein (Block 342), folgt der Arbeitsablauf dem Pfad 391 zum Ausgangsblock 341, in dem die Methode Benachrichtigungskern_einheit::m_aufträge_zurücksetzen beendet wird. Anderseits, wenn ja (Block 342), folgt der Arbeitsablauf dem Pfad 392 zum Block 343. Im Block 343 wird dem Objekt, daß sich in der Liste (Attribut) m_liste_aufträge an der Position index befindet, die Methode Benachrichtigungs_auftrag::rücksetzen, mit dem im Eingangsblock 339 übergebenen Wert als Argument, gesendet. Der Arbeitsablauf folgt dann dem Pfad 393 zum Block 344. Im Block 344 wird die automatische Variable index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 394 zum oben beschriebenen Block 342.
Fig. 4r und 4s beschreiben die Klasse Benachrichtigungskern_einheit 160 im Detail, mit Hilfe von Ablaufplänen für die Methoden (Funktionen) der Klasse. Methoden, die nur Werte von Attributen (Daten) der Klasse lesen oder schreiben, werden nicht explizit durch Ablaufpläne beschrieben. Alle benannten Parameter, Attribute (Variablen), Strukturen und Aufzählungen sind in der Beschreibung zur Fig. 4a, in den Klassendeklarationen und Typbeschreibungen im Detail ausgeführt. Außer den in der Fig. 4a in den Klassendeklarationsbeschreibungen aufgeführten Attributen (Variablen), werden in den folgenden Ablaufbeschreibungen auch automatische Variablen verwendet. Automatische Variablen werden als Zwischenspeicher für temporäre Berechnungen innerhalb der einzelnen Methoden verwendet.
Die Fig. 4r beschreibt die Methode Benachrichtigungskern_einheit::m_programmfaden_benachrichtigung. Die Methode beginnt mit dem Eingangsblock 395, in dem die automatischen Variablen ref_event, initial_zeit, absolut_zeit, akkumulierte_zeit und delta_zeit vom Typ long, angelegt werden. Der Arbeitsablauf folgt dann dem Pfad 425 zum Block 396. Im Block 396 wird das Attribut m_ev_zeit mit einem Timer (aktiviert in vorgegebenen Abständen das Attribut (Event)) verbunden, das Attribut initial_zeit wird mit der aktuellen Systemzeit belegt, anschließend werden alle restlichen automatische Variablen mit dem Wert 0 belegt. Der Arbeitsablauf folgt dann dem Pfad 426 zum Block 397. Im Block 397 wird ermittelt, ob das Attribut m_ev_beenden aktiviert ist. Der Arbeitsablauf folgt dann dem Pfad 427 zum Entscheidungsblock 398. Im Block 398 wir geprüft, ob das Attribut m_ev_beenden aktiviert war. Wenn ja (Block 398), folgt der Arbeitsablauf dem Pfad 428 zum Block 403. Im Block 403 wird das Attribut m_ev_zeit von dem Timer wieder gelöst. Der Arbeitsablauf folgt dann dem Pfad 434 zum Block 404. Im Block 404 wird das Attribut m_ev_beenden_ausgeführt aktiviert. Der Arbeitsablauf folgt dann dem Pfad 435 zum Ausgangsblock 405, in dem die Methode Benachrichtigungskern_einheit:: m_programmfaden_benachrichtigung beendet wird. Anderseits, wenn nein (Block 398), folgt der Arbeitsablauf dem Pfad 429 zum Block 399. Im Block 399 wird solange gewartet, bis beide Attribute, m_ev_zeit und m_ev_ist_leer, aktiviert worden sind. Der Arbeitsablauf folgt dann dem Pfad 430 zum Block 400. Im Block 400 wird mittels dem Attribut m_unteilbarer_abschnitt ein unteilbarer Abschnitt (Critical Section) begonnen. Der Arbeitsablauf folgt dann dem Pfad 431 zum Block 401. Im Block 401 wird die Differenz aus der aktuellen Systemzeit und der automatischen Variablen inital_zeit der automatischen Variablen relativ_zeit zugewiesen, die Differenz aus den automatischen Variablen relativ_zeit und akkumulierte_zeit wird der automatischen Variablen delta_zeit zugewiesen und sie Summe der automatischen Variablen akkumulierte_zeit und delta_zeit wird der automatischen Variablen akkumulierte_zeit zugewiesen. Anschließend wird die Methode Benachrichtigungskern_einheit::m_aufträge_rücksetzen mit der automatischen Variablen delta_zeit als Argument aufgerufen. Danach wird das Attribut m_ist_leer mit der Konstanten NEIN beleget und die Methode Benachrichtigungskern_einheit::m_geräte_anstoßen aufgerufen. Der Arbeitsablauf folgt dann dem Pfad 432 zum Block 402. Im Block 402 wird mittels dem Attribut m_unteilbarer_abschnitt der unteilbare Abschnitt (Critical Section) wieder verlassen. Der Arbeitsablauf folgt dann dem Pfad 433 zum oben beschriebenen Block 397.
Die Fig. 45 beschreibt die Methode Benachrichtigungskern_einheit::suche_passenden_auftrag. Die Methode beginnt mit dem Eingangsblock 406, dem als Aufrufparameter eine Referenz auf einen Wert von Typ Benachrichtigungs_parameter_gerät 167 und ein Wert von Typ GERÄTE_ART übergeben wird, außerdem werden die automatischen Variablen anzahl, index, vom Typ long, status, vom Typ STATUS, und ist_leer_aktuell, vom Typ BOOL, angelegt. Der Arbeitsablauf folgt dann dem Pfad 436 zum Block 407. Im Block 407 wird mittels dem Attribut m_unteilbarer_abschnitt ein unteilbarer Abschnitt (Critical Section) begonnen. Der Arbeitsablauf folgt dann dem Pfad 437 zum Entscheidungsblock 408. Im Block 408 wird geprüft, ob das Attribut m_ist_leer ungleich der Konstanten NEIN ist. Wenn nein (Block 408), folgt der Arbeitsablauf dem Pfad 438 zum Block 423. Im Block 423 wird mittels dem Attribut m_unteilbarer_abschnitt der unteilbare Abschnitt (Critical Section) wieder verlassen. Der Arbeitsablauf folgt dann dem Pfad 458 zum Ausgangsblock 424, in dem die Methode Benachrichtigungskern_einheit::suche_passenden_auftrag beendet wird und die Konstante NEIN als Rückgabewert übergeben wird. Anderseits, wenn ja (Block 408), folgt der Arbeitsablauf dem Pfad 439 zum Block 409. Im Block 409 wird die automatische Variable anzahl mit der Anzahl der Elemente der Liste (Attribut) m_liste_aufträge belegt, die automatische Variable index mit 0 und die automatische Variable ist_leer_aktuell mit der Konstanten JA belegt. Der Arbeitsablauf folgt dann dem Pfad 440 zum Entscheidungsblock 410. Im Block 410 wird geprüft, ob die automatische Variable index kleiner ist als die automatische Variable anzahl. Wenn nein (Block 410), folgt der Arbeitsablauf dem Pfad 441 zum Entscheidungsblock 421. Im Block 421 wird geprüft, ob die automatische Variable ist_leer_aktuell gleich der Konstanten JA ist. Wenn ja (Block 421), folgt der Arbeitsablauf dem Pfad 455 zum Block 422. Im Block 422 wird das Attribut m_ist_leer mit der Konstanten JA belegt und das Attribut m_ev_ist_leer aktiviert. Der Arbeitsablauf folgt dann dem Pfad 457 zum oben beschriebenen Block 423. Anderseits, wenn nein (Block 421), folgt der Arbeitsablauf dem Pfad 456 zum oben beschriebenen Block 423. Anderseits, wenn ja (Block 410), folgt der Arbeitsablauf dem Pfad 442 zum Block 412. Im Block 412 wird dem Objekt, daß sich in der Liste (Attribut) m_liste_aufträge an der Position index befindet, die Methode Benachrichtigungs_auftrag::suche_passenden_auftrag gesendet, wobei die im Eingangsblock 406 übergebene Werte als Argumente verwendet werden. Der Rückgabewert des Aufrufes wird der automatischen Variablen status zugewiesen. Der Arbeitsablauf folgt dann dem Pfad 443 zum Entscheidungsblock 413. Im Block 413 wird geprüft, ob der Wert der automatischen Variablen status gleich der Konstanten BESCHÄFTIGT ist. Wenn ja (Block 413), folgt der Arbeitsablauf dem Pfad 444 zum Block 414. Im Block 414 wird die automatische Variable ist_leer_aktuell mit der Konstanten NEIN belegt. Der Arbeitsablauf folgt dann dem Pfad 445 zum Block 411. Im Block 411 wird die automatische Variable index um den Wert 1 inkrementiert. Der Arbeitsablauf folgt dann dem Pfad 446 zum oben beschriebenen Block 410. Anderseits, wenn nein (Block 413), folgt der Arbeitsablauf dem Pfad 447 zum Entscheidungsblock 415. Im Block 415 wird geprüft, ob der Wert der automatischen Variablen status gleich der Konstanten GEFUNDEN ist. Wenn ja (Block 415), folgt der Arbeitsablauf dem Pfad 448 zum Block 416. Im Block 416 wird die automatische Variable ist leer aktuell mit der Konstanten NEIN belegt. Der Arbeitsablauf folgt dann dem Pfad 449 zum Block 417. Im Block 417 wird mittels dem Attribut m_unteilbarer_abschnitt der unteilbare Abschnitt (Critical Section) wieder verlassen. Der Arbeitsablauf folgt dann dem Pfad 450 zum Ausgangsblock 418, in dem die Methode Benachrichtigungskern_einheit::suche_passenden_auftrag beendet wird und die Konstante JA als Rückgabewert übergeben wird. Anderseits, wenn nein (Block 415), folgt der Arbeitsablauf dem Pfad 451 zum Entscheidungsblock 419. Im Block 419 wird geprüft, ob der Wert der automatischen Variablen status gleich der Konstanten NICHT_GEFUNDEN ist. Wenn ja (Block 419), folgt der Arbeitsablauf dem Pfad 452 zum Block 420. Im Block 420 wird die automatische Variable ist_leer_aktuell mit der Konstanten NEIN belegt. Der Arbeitsablauf folgt dann dem Pfad 453, der in den Pfad 445 mündet, der zum oben beschriebenen Block 411 führt. Anderseits, wenn nein (Block 419), folgt der Arbeitsablauf dem Pfad 454, der in den Pfad 453 mündet, der in den Pfad 445 mündet, der zum oben beschriebenen Block 411 führt.
Fig. 5a beschreibt eine Ausführungsform für eine Datenbank für einen Vermittlungsautomaten mit automatischer Benachrichtigung, in der speziellen Ausprägung eines Partnervermittlungsautomaten. Die Datenbank modelliert beispielhaft, die hierzu benötigten Datenstrukturen und die Abhängigkeiten der Datenstrukturen untereinander.
Das angegebenen Ausführungsbeispiel, in bevorzugter Aufführungsform, ist in Form einer Relationalen-Datenbank dargestellt, welche auf ein Relationales- Datenbankmanagementsystem (RDBMS) aufsetzt. Diese Ausführung ist nur eine von vielen möglichen Ausführungen. Es ist auch möglich das angegebene Ausführungsbeispiel in Form einer Objektorientieren-Datenbank auszuführen welche auf ein sogenannte Objektorientierts-Datenbankmanagementsystem (OODBMS) aufsetzt. Hierzu sind unter anderem die Tabellenbeschreibungen als Objektbeschreibungen zu verstehen und die Relationen sind als Assoziationen bzw. Beziehungen zu verstehen.
Im nachfolgenden werden die Tabelle beschrieben, wobei folgende Vereinbarungen getroffen werden:
der erste Wert in einer Zeile beschreibt den Datentyp des Eintrages und der zweite Werte den Bezeichner des Eintrages, wobei letzterer die Aufgabe und Funktion des Eintrages beschreibt.
Der Datentyp Schlüssel(Datenbankweit eindeutig) beschreibt eine eindeutige Kennung für einen Eintag in einer Tabelle. Sind mehrere Datentypen vom Typ Schlüssel in einer Tabelle vorhanden, so sind diese zusammen als ein Kombinationsschlüssel zu betrachten. Ein Verweis auf einen Schlüssel wird als Fremdschlüssel bezeichnet. Für die programmtechnische Umsetzung wird für diese beiden Typen der programminterne Datentyp long (Fig. 4a Beschreibung) verwendet. Die unterschiedlichen Schlüsseltypen werden im nachfolgenden durch Unterstreichungen hervorgehoben. Der Datentyp Text beschreibt eine textuelle Information. Der Typ Datum/Zeit beinhaltet Informationen über Datum und Zeit. Der Typ Zahl beschreibt einen numerischen Wert. Der Typ Bool beinhaltet Information über eine boolische Aussage, die Werte hierfür sind "ja" oder "nein".
Alle beschriebenen Angaben innerhalb der Einträge, mit Ausnahme der Schlüsseltypen, sind optional, daß bedeutet, daß die Daten bereitstellenden Personen nur die Daten zur Verfügung stellen brauchen, die sie unter Wahrung ihrer persönlichen Anonymität für richtig erachten. Fehlende Daten kommen in späteren Mitteilungen innerhalb eines Dialoges (im nachfolgendem als Dialogkette beschrieben) ergänzt oder verändert werden.
Die Tabelle_Anzeige (501) dient als zentraler Ausgangspunkt für die Aufnahme von Daten für eine Partnerschaftsvermittlungsanzeige und deren Reaktionen darauf. Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_anzeige
Text Password_A_der_person_die_eine_suchanzeige_eingebracht_hat
Datum/Zeit erzeugt_am
Die Tabelle_Dialog_Start (502) dient als Ausgangspunkt und für die Aufnahme von Daten für neu begonnene Dialoge zwischen einer Person die eine Anzeige zur Partnervermittlung in das Automatensystem eingebracht hat und einer darauf antwortenden Person. Die Tabelle steht durch die Relation 510 mit der Tabelle 501 in Beziehung.
Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_dialog_start
Fremdschlüssel F_automat
Fremdschlüssel F_anzeige
Text
Password_B_der_person_die_auf_eine_suchanzeige_eine_antwort_eingebracht_hat
Datum/Zeit erzeugt_am
Bool ist_nachricht_gelesen_worden
Die Tabelle_Dialog_Fortgesetzt (503) dient für die Aufnahme von Daten für die Fortführung eines mit der Tabelle 501 begonnenen Dialoges. Die Tabelle steht durch die Relation 516 mit der Tabelle 502 in Beziehung.
Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_dialog_fortgesetzt
Fremdschlüssel F_automat
Fremdschlüssel F_dialog_start
Text erzeugt_von_Benutzer_A_oder_Benutzer_B
Datum/Zeit erzeugt_am
Bool ist_nachricht_gelesen_worden
Die Tabelle_Selbstbeschreibung (504) dient für die Aufnahme von Daten zur Selbstbeschreibung einer Person die eine Anzeige zur Partnervermittlung in das Automatensystem eingebracht hat oder einer darauf antwortenden Person innerhalb einer Dialogkette, die durch einen Eintrag in der Tabelle 502 begonnen wird und durch beliebig viele in der Tabelle 503 fortgesetzt wird. Die Tabelle steht durch die Relationen 511, 515 und 522 mit den Tabellen 501, 502 und 503 in Beziehung. Der Datentyp Zahl dient in hier auch zur speicherplatzsparenden Aufnahme von aufzählbaren und damit auf Zahlen abbildbaren Eigenschaften. Der Datentyp Text dient hier auch zur speicherplatzsparenden Aufnahme von aufzählbaren und damit auf Zahlen abbildbaren Eigenschaften, die falls mehrere Eigenschaften angewählt werden können als Zahlensequenz, unterbrochen von Leerzeichen, in Form eines Textzeile beschrieben werden.
Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_selbstbeschreibung
Fremdschlüssel F_automat
Fremdschlüssel F_referenz_auf_tabellentyp_501_502_und_503
Text datei_referenz_auf_bild_oder_video_falls_vorhanden
Text geschlecht
Text nationalität
Text name_vor
Text name_nach
Zahl alter
Zahl gewicht
Zahl figur
Zahl groesse
Zahl sternzeichen
Zahl farbe_augen
Zahl farbe_haar
Bool raucher
Zahl familienstand
Zahl kinder
Zahl ausbildung
Text Beruf
Bool Führerschein
Bool Auto
Zahl lieblingsfarbe
Text temperament
Text lebenseinstellung
Text bevorzugte_sportarten
Text interessen_kultur
Text interessen_musik
Die Tabelle_Suchbeschreibung (505) dient für die Aufnahme von Daten zur Beschreibung der gewünschten Eigenschaften einer Person, die über die Anzeige zur Partnervermittlung gesucht wird als auch zur Beschreibung der gewünschten Eigenschaften innerhalb einer Dialogkette, die durch einen Eintrag in der Tabelle 502 begonnen wird und durch beliebig viele Einträge in der Tabelle 503 fortgesetzt wird. Die in der Tabelle 504 beschriebene Verwendung der Datentypen Zahl und Text wird auch in Tabelle 505 angewendet. Die Tabelle steht durch die Relationen 512, 518 und 523 mit den Tabellen 501, 502 und 503 in Beziehung. Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_suchbeschreibung
Fremdschlüssel F_automat
Fremdschlüssel F_referenz_auf_tabellentyp_501_502_und_503
Text geschlecht
Text nationalität
Zahl alter_von
Zahl alter_bis
Zahl gewicht_von
Zahl gewicht_bis
Zahl figur_von
Zahl figur_bis
Zahl groesse_von
Zahl groesse_bis
Text sternzeichen
Text farbe_augen
Text farbe_haar
Bool raucher
Text familienstand
Zahl kinder
Zahl ausbildung
Bool Führerschein
Bool Auto
Zahl lieblingsfarbe
Text temperament
Text lebenseinstellung
Text bevorzugte_sportarten
Text interessen_kultur
Text interessen_musik
Die Tabelle_Nachricht (506) dient für die Aufnahme von Daten zur Mitteilung von textuell geformten Nachrichten oder Beschreibungen innerhalb einer Dialogkette, die durch einen Eintrag in der Tabelle 502 begonnen wird und durch beliebig viele Einträge in der Tabelle 503 fortgesetzt wird. Die Tabelle steht durch die Relationen 513, 519 und 524 mit den Tabellen 501, 502 und 503 in Beziehung.
Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_nachricht
Fremdschlüssel F_automat
Fremdschlüssel F_referenz_auf_tabellentyp_501_502_und_503
Text textuelle_nachricht
Die Tabelle_Kontakt (507) dient für die Aufnahme von Daten zur Herstellung eines persönlichen Kontaktes zwischen eine Person, die die Anzeige in das Automatensystem eingebracht hat und einer Person, die auf die Anzeige geantwortet hat innerhalb einer Dialogkette, die durch einen Eintrag in der Tabelle 502 begonnen wird und durch beliebig viele Einträge in der Tabelle 503 fortgesetzt wird. Bei dieser Tabelle gilt im besonderen die oben beschriebene Optionalität der Dateneingabe, daß bedeutet die Daten müssen nicht vollständig eingeben werden. Die Tabelle steht durch die Relationen 514, 520 und 525 mit den Tabellen 501, 502 und 503 in Beziehung.
Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_kontakt
Fremdschlüssel F_automat
Fremdschlüssel F_referenz_auf_tabellentyp_501_502_und_503
Text name_vor
Text name_nach
Zahl adresse_stadt
Zahl adresse_postleitzahl
Text adresse_strasse
Text adresse_hausnummer
Text telefon_0
Text telefon_1
Text treffpunkt_bezirk
Text treffpunkt_strasse
Text treffpunkt_treffpunkt
Text treffpunkt_datum
Text treffpunkt_zeit
Text erkennungsmerkmal
Die Tabelle_Benachrichtiguns_Kopf (508) dient als zentraler Ausgangspunkt für die Aufnahme von Daten zur automatischen Benachrichtigung eines Nutzers des Automatensystems, für den Fall daß für ihn eine Nachricht in das Automatensystem eingegangen ist. Zudem beinhaltet sie die Option für einen 'Anonymen Direktkontakt'. Die Tabelle steht durch die Relationen 515 und 521 mit den Tabellen 501 und 502 in Beziehung.
Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_benachrichtigungs_kopf
Fremdschlüssel F_automat
Fremdschlüssel F_referenz_auf_tabellentyp_501_und_502
Text dateireferenz_auf_zu_versendene_nachricht
Bool anonymer_direktkontakt_möglich
Die Tabelle_Benachrichtigungs_Adresse (509) dient für Aufnahme der Daten für die verschiedenen Adressen (Ziele) zu denen eine Nachricht, mit Bezug auf den Eingang von Daten für die mit der Adresse in Beziehung stehenden Person, gesendet werden soll sowie der den Adressen zugeordneten Restriktionen in Bezug auf Zeitraum und anderem.
Die Tabelle steht durch die Relation 526 mit der Tabelle 508 in Beziehung. Die Tabelle besteht aus folgenden Elementen:
Schlüssel S_automat
Schlüssel S_benachrichtigungs_adresse
Fremdschlüssel F_automat
Fremdschlüssel F_referenz_auf_tabellentyp_501_und_502
Datum/Zeit benachrichtigungszeitraum_datum_begin
Datum/Zeit benachrichtigungszeitraum_datum_ende
Text benachrichtigungszeitraum_wochentag_begin
Text benachrichtigungszeitraum_wochentag_ende
Datum/Zeit benachrichtigungszeitraum uhrzeit_begin
Datum/Zeit benachrichtigungszeitraum uhrzeit_ende
Zahl benachrichtigungsversuchs_priorität_bei_mehreren_Benachrichtigungs_adressen
Zahl benachrichtigungsversuchs_intervall_in_Minuten
Zahl geräteart_des_adressierten_empfangsgerätes
Text adresse_des_empfangsgerätes
Zahl zeitlimit_für_einzelnen_benachrichtigungsversuchs
Fig. 6a
Die Ansicht zeigt den strukturellen Aufbau der Bedienoberfläche für die spezielle Ausprägung des Vermittlungsautomaten als Partnerschaftsvermittlungsautomat und ist nur eine von vielen möglichen Ausprägungen. Diese Ausprägung ist die bevorzugte Darstellungsform für die spezielle Ausprägung des Vermittlungsautomaten als Partnerschaftvermittlungsautomat. Für die Ausprägung des Vermittlungsautomaten sind andere und/oder modifizierte Bedieoberflächen möglich.
Die Festlegung auf eines über alle Bediendarstellungen (Bedienseiten) gleichförmigen Layoutes, hat den Vorteil, daß die unterschiedlichen Bediendarstellungen die dem Benutzer während der Bedienung entgegentreten diesem als "vertraut" erscheinen. Hierdurch wird die Bedienung erleichtert und damit die Akzeptanz des Vermittlungsautomaten für den kommerziellen Einsatz erhöht.
Alle nachfolgenden beschriebenen Details sind für die Darstellung von Text, Graphik, animierter Graphik, Bild und Video einzeln als auch in Kombination vorgesehen. Alle nachfolgenden Details dienen durch die Parameter ihrer Position und Ausdehnung für die Eingabe, seitens des Benutzers des Vermittlungsautomaten, mittels einer Zeigevorrichtung (Maus, Glidepad, Trackball, Touchscreen und anderen geeigneten Vorrichtungen). Für die Programmtechnische Umsetzung sind in objektorientierten Sinn jedem Bedienelement des Vermittlungsautomaten und somit auch die nachfolgend beschriebenen Details eine textuelle als auch akustische Signatur zugeordnet mit deren Hilfe eine Bedienung durch Sprache mittels einer Spracherkennungseinrichtung ermöglicht wird. Hierdurch wird zudem ein "Vorlesen" der einzelnen zur Auswahl und Bedienung stehenden Bedienelemente möglich, und somit wird der Vermittlungsautomat auch für sehbehinderte Personen bedienbar.
Die Detail 527 beschreibt die Ausdehnung einer vollständigen Bedienseite. Das Detail 528 ist für das Logo vorgesehen. Der Bereich 538 ist insbesondere für die kommerzielle Werbung vorgesehen. Das Detail 533 kennzeichnet den für die Navigation vorgesehenen Bedienraum. Das Detail 534 kennzeichnet den das Gebiet in dem sich die Navigations­ bedienelemente 535 bis 542 befinden. Das Detail 531 kennzeichnet den Modusbereich in dem die aktuelle Bedienseite, welche durch das System als auch durch den Bediener mittels der Navigationsbedinelemente, Dateneingabebedienelemente, Bestätigungsbedienelemente, Abbruchbedienelemente sowie sonstige Bedienvorgänge (Spracherkennung, . . .) bestimmt wird, gekennzeichnet wird. Das Detail 530 kennzeichnet den Hauptdarstellungsbereich, in dem die Darstellung und Eingabe von Daten über Personen, Eigenschaften, Daten (Ort, Zeit, elektronische Adressen und andere) stattfindet sowie Informationstexte, Hilfstexte und Animationen zur Attraktivitätssteigerung für die kommerzielle Nutzung dargestellt werden. Das Detail 532 ist speziell für die Darstellung von Hilfstexten und Informationstexten vorgesehen, die explizite Separation von Detail 530 dient der schnellen Erkennung durch den Benutzer des Vermittlungsautomaten und dient damit der weiteren Erhöhung der Bediensicherheit und damit der Bedienerakzeptanz.
Ein besonderer Punkt in der Bedienoberfläche ist, daß das Vermittlungsautomatensystem (Ein Steuerungssystem, das) ermöglicht Produktinformationen darzustellen, speziell im Detail 538, die gesteuert werden, in ihrer Auswahl und in ihrer Darstellung (Art der Informationspräsentation, darstellende Personen, Ablauf, Farben, Ton, Musik, . . .), durch Daten, die direkt und/oder indirekt von einem Bediener des Vermittlungsautomatensystems in dieses eingeben werden, die Zuordnungen zu seinem Geschlecht, Alter, Herkunft, sozialer Zugehörigkeit, Kaufkraft, Bildungsniveau, Vorlieben (Kleidung, Musik, Technische Artikel, . . .), Aktivitäten (Reiseunternehmungen, Hobbies, sportliche Tätigkeiten), Konsumverhalten und anderen Merkmalen zulassen, sowie von Daten des Aufstellungsortes (Einkaufzentrum, Bar, Kino, . . .), Datum und Zeit der Benutzung durch den Bediener und vorhergehenden Benutzerprofilen, ein wesentlichen Punkt ist, daß alle oder ein Teil der verwendeten Daten primär zur Bedienung anderer Vorgänge eingebracht wurden. Es ist möglich daß die Produktinformationssteuerung auch direkt und bewußt durch den Benutzer des Vermittlungsautomatensystems (Automaten), beeinflußt werden kann, um dem Benutzer die Möglichkeit zu geben, auf für in interessante Produktinformationen zu reagieren und weitere und/oder detailliertere Informationen abzurufen und/oder Produktbestellungen vorzunehmen und/oder an (Gewinn)spielen teilzunehmen. Es ist weiterhin möglich, daß biometrischen Daten (z. B. Bestimmung ob Produktinformation betrachtet wird, durch Auswertung der Pupillenausrichtung via Digitalkammera und zugehöriger Steuerungssoftware) ebenfalls als Steuerungsparameter für die Produktinformationssteuerung verwendet werden. Hierdurch wird erreicht, das auch ohne direkte Interaktion (z. B. Anfordern weiterer Produktinformationen, oder Teilnahme an (Gewinn)spielen) eine Resonanz/Akzeptanz-Bewertung vorgenommen werden kann, die direkt oder indirekt durch die Produktinformationssteuerung ausgewertet wird zur Steuerung der Auswahl und/oder Darstellung der Produktinformationen. Die Produktinformationssteuerung kann statistische und andere Informationen, gewonnen durch direkte und/oder indirekte Daten von Bedienern der Vermittlungsautomaten­ systems (Automat), durch Datenfernübertragung automatisch oder ferninitiert zur Erzeugung optimierter Produktinformationen versenden. Die Produktinformations­ steuerung kann durch Datenfernübertagung automatisch oder ferninitiiert neue Produktinformationen speichern und vorhandene löschen, hiermit kann die Produktinformationssteuerung neue Speicherinhalte aufnehmen, ohne daß eine Vorort- Wartung/Aktuallisierung notwendig ist.
Fig. 6b und 6c zeigen spezielle Element der Bedienoberfäche. Die Fig. 6b zeigt ein Navigationsbedienelement 535 bis 542 im Detail. Die Information über die Art der Navigationsart wird durch die Bereiche 554 und 545 in visueller und textueller Art dargestellt, um ein schnelles Erkennen zu ermöglichen. Der Bereich 543(547) signalisiert hierbei die Anwahl oder des Navigationsbedienelementes oder die aktuelle Bearbeitung eines Navigationsbvorganges.
Die Fig. 6c zeigt eine vorteilhafte Ausprägung eines Bedienelementes für die intuitive Eingabe von Werten. Besonders ist hierbei, daß der aktuelle Wert 563, 566 und 572 (Wertebereich 569 und 570) in visueller und textueller Darstellung angezeigt und bedient werden kann, so ist es möglich mit den Details 554(562,568) und 557(565,571) ein Verringerung oder Vergrößerung des Wertes (Wertebereich) zu erreichen, als auch durch 'Anfassen' (Touchscreen) des visuallisierten Wertes 563, 569 und 570 eine Werteeingabe und/oder Wertemodifikation vorzunehmen.
Bezugszeichenliste
1
Gehäuse des Automaten
2
Bildschirm (TouchScreen, 3D-fähig: Darstellungsfähigkeit von räumlichen Objekten ohne spezielle Vorrichtung(Brille) auf Seiten des Betrachters)
3
Digitale-Stereo-Kamera (Einzelbild, Video)
4
a Mikrofon links
4
b Mikrofon rechts
5
a Beleuchtung links
5
b Beleuchtung rechts
6
a Lautsprecher links
6
b Lautsprecher rechts
7
Barcode-Lesegerät
8
Chipkarten/Magnetkarten-Lese-und-Schreib-Einrichtung
9
Drucker
10
Geldannahme-Einrichtung
11
Tastatur
12
Zeige-Einrichtung
13
Allgemeine-Interaktions-Einrichtung (bevorzugt Fingerlinien-Scanner)
14
Kommunikationsverbindung
15
Betriebsspannungsversorgungsverbindung
16
CPU
17
Cache-Speichereinheit
18
System-Bus
19
RAM und ROM_Speichereinheit
20
Massenspeicher (Harddisks)
21
Seriell- und Parallel-Interface
22
Video-Einheit (Graphikkarte)
23
Audio-Sende-und-Empfangs-Einrichtung (Soundkarte)
24
Fax/Modem-Sende-und-Empfangs-Einrichtung (Mehrfachauslegung)
25
ISDN(EURO)-Sende-und-Empfangs-Einrichtung (Mehrfachauslegung)
26
Netzwerk-Sende-und-Empfangs-Einrichtung (Mehrfachauslegung)
27
Allgemeine-Kommunikations-Einrichtung (Mehrfachauslegung)
28
Benachrichtigungs-Einheit
29
Vermittlungsautomat-Remote-Server-Kern-Einheit
30
Fernabfrage-Server-Einheit
31
Bildtelefon-Server-Einheit
32
World-Wide-Web(WWW)-Server-Einheit
33
Datenbank
34
Bedienereingabe-Einrichtungenen
35
Bedienerausgabe-Einrichtungenen
36
Datenfluß-Verbindung Vermittlungsautomat-Remote-Server-Kern-Einheit zur Benachrichtigungs-Einheit
37
Datenfluß-Verbindung Vermittlungsautomat-Remote-Server-Kern-Einheit zu Daten- Sende-und-Empfangs-Einrichtungen
38
Datenfluß-Verbindung Benachrichtigungs-Einheit zu Daten-Sende-und-Empfangs- Einrichtungen
39
Datenfluß-Verbindung Fernabfrage-Server-Einheit zu Daten-Sende-und-Empfangs- Einrichtungen
40
Datenfluß-Verbindung Bildtelefon-Server-Einheit zu Daten-Sende-und-Empfangs- Einrichtungen
41
Datenfluß-Verbindung WWW-Server-Einheit zu Daten-Sende-und-Empfangs- Einrichtungen
42
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
43
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
44
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
45
Datenfluß-Verbindung Vermittlungsautomat-Remote-Server-Kern-Einheit zu Datenbank
46
Datenfluß-Verbindung Benachrichtigungs-Einheit zu Datenbank
47
Datenfluß-Verbindung Fernabfrage-Server-Einheit zu Datenbank
48
Datenfluß-Verbindung Bildtelefon-Server-Einheit zu Datenbank
49
Datenfluß-Verbindung WWW-Server-Einheit zu Datenbank
50
Datenfluß-Verbindung Vermittlungsautomat-Remote-Server-Kern-Einheit zu Bediener-Ein-und-Ausgabe-Einrichtungen
51
Datenfluß-Verbindung Bediener-Ein-und-Ausgabe-Einrichtungen
52
Vermittlungsautomat-Local-Server-Kern-Einheit
53
Datenbank
54
Bedienereingabe-Einrichtungen
55
Bedienerausgabe-Einrichtungen
56
Datenfluß-Verbindung Vermittlungsautomat-Local-Server-Kern-Einheit zu Bediener- Ein-und-Ausgabe-Einrichtungen
57
Datenfluß-Verbindung Bediener-Ein-und-Ausgabe-Einrichtungen
58
Datenfluß-Verbindung Vermittlungsautomat-Local-Server-Kern-Einheit zu Datenbank
59
Datenfluß-Verbindung Vermittlungsautomat-Local-Server-Kern-Einheit zu Daten- Sende-und-Empfangs-Einrichtungen
60
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
61
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
62
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
63
Vermittlungsautomat-Client-Kern-Einheit
64
Bedienereingabe-Einrichtungen
65
Bedienerausgabe-Einrichtungen
66
Datenfluß-Verbindung Vermittlungsautomat-Client-Kern-Einheit zu Bediener-Ein- und-Ausgabe-Einrichtungen
67
Datenfluß-Verbindung Bediener-Ein-und-Ausgabe-Einrichtungen
68
Datenfluß-Verbindung Vermittlungsautomat-Client-Kern-Einheit zu Daten-Sende- und-Empfangs-Einrichtungen
69
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
70
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
71
Datenfluß-Verbindung Daten-Sende-und-Empfangs-Einrichtungen
72
Vermittlungsautomat-Remote-Server
73
Vermittlungsautomat-Remote-Server
74
Vermittlungsautomat-Remote-Server
75
Vermittlungsautomat-Local-Server
76
Vermittlungsautomat-Client
77
Vermittlungsautomat-Client
78
Vermittlungsautomat-Local-Server
79
Vermittlungsautomat-Client
80
Vermittlungsautomat-Local-Server
81
Vermittlungsautomat-Local-Server
82
Vermittlungsautomat-Client
83
Vermittlungsautomat-Local-Server
84
Bildtelefon
85
Bildtelefon
86
Internet-WWW-Browser
87
Telefon
88
Telefon
89
Telefon
90
Pager
91
Handy (Short-Message-Service fähig)
92
Fax-Gerät oder Fax fähiges Gerät
93
E-Mail-Empfangsgerät
94
allgemeines Sende-und-Empfangsgerät
95
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Servern
96
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Servern
97
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Vermittlungsautomat-Local-Server
98
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Vermittlungsautomat-Local-Server
99
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Vermittlungsautomat-Local-Server
100
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Vermittlungsautomat-Local-Server
101
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Vermittlungsautomat-Local-Server
102
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Bildtelefon
103
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Bildtelefon
104
Datenübertragungsverbindung zwischen Vermittlungsautomat-Remote-Server und Internet-WWW-Browser
105
lokales Datenübertragungsnetz zwischen einem Vermittlungsautomat-Remote-Server und mehreren Vermittlungsautomat-Clients
106
lokales Datenübertragungsnetz zwischen einem Vermittlungsautomat-Remote-Server und einem Vermittlungsautomat-Client
107
lokales Datenübertragungsnetz zwischen einem Vermittlungsautomat-Remote-Server und einem Vermittlungsautomat-Client
108
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und Telefon
109
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und Telefon
110
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und Telefon
111
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und Pager
112
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und Handy (Short-Message-Service fähig)
113
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und Fax-Gerät
114
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und E-Mail-Empfangsgerät
115
Datenübertragungsverbindung zwischem einem Vermittlungsautomat-Remote-Server und allgemeines Sende-und-Empfangsgerät
116
a Benutzer A, der eine Vermittlungsanzeige in das Vermittlungsautomatensystem einbringt
116
b Zeitlinie, der Aktiviäten von
116
a
117
a Vermittlungsautomat-Client_A
117
b Zeitlinie, der Aktiviäten von
117
a
118
a Vermittlungsautomat-Local-Server_A
118
b Zeitlinie, der Aktiviäten von
118
a
119
a Vermittlungsautomat-Remote-Server
119
b Zeitlinie, der Aktiviäten von
119
a
120
a Vermittlungsautomat-Local-Server_B
120
b Zeitlinie, der Aktiviäten von
120
a
121
a Vermittlungsautomat-Client_B
121
b Zeitlinie, der Aktiviäten von
121
a
122
a Benutzer B, der auf eine Vermittlungsanzeige im Vermittlungsautomatensystem antwortet
122
b Zeitlinie, der Aktiviäten von
122
a
123
Bedienaktion von Benutzer_A
124
Aktivität von Vermittlungsautomat-Client_A
125
Aktivität von Vermittlungsautomat-Local-Server_A
126
Aktivität von Vermittlungsautomat-Remote-Server
127
Aktivität von Vermittlungsautomat-Local-Server_A
128
Aktivität von Vermittlungsautomat-Local-Server_B
129
Bedienaktion von Benutzer_B
130
Aktivität von Vermittlungsautomat-Client_B
131
Aktivität von Vermittlungsautomat-Local-Server_B
132
Aktivität von Vermittlungsautomat-Local-Server_B
133
Aktivität von Vermittlungsautomat-Remote-Server
134
Aktivität von Vermittlungsautomat-Local-Server_A
135
Aktivität von Vermittlungsautomat-Local-Server_B
136
Aktivität von Vermittlungsautomat-Remote-Server
137
Aktivität von Vermittlungsautomat-Local-Server_A
138
von Benutzer_A angegebenes Kommunikationsgerät empfängt erfolgreich Meldung von Vermittlungsautomat-Remote-Server
139
Aktivität von Vermittlungsautomat-Local-Server_B
140
Bedienaktion von Benutzer_A
141
Aktivität von Vermittlungsautomat-Client_A
142
a Aktivität von Vermittlungsautomat-Local-Server_A
142
b Dialog mit Benutzer_B
143
Nachrichtenaustausch zwischen
116
a und
117
a
144
Nachrichtenaustausch zwischen
117
a und
118
a
145
Nachrichtenaustausch zwischen
117
a und
116
a
146
Nachrichtenaustausch zwischen
119
a und
118
a
147
Nachrichtenaustausch zwischen
119
a und
120
a
148
Nachrichtenaustausch zwischen
122
a und
121
a
148
a Nachrichtenaustausch zwischen
122
a und
121
a
149
Nachrichtenaustausch zwischen
121
a und
120
a
150
Nachrichtenaustausch zwischen
121
a und
120
a
151
Nachrichtenaustausch zwischen
121
a und
122
a
152
Nachrichtenaustausch zwischen
119
a und
118
a
153
Nachrichtenaustausch zwischen
119
a und
120
a
154
Nachrichtenaustausch zwischen
119
a und
118
a
155
Nachrichtenaustausch zwischen
119
a und
116
a, erfolgreiches Senden der Meldung zu Benutzer_A
156
Nachrichtenaustausch zwischen
119
a und
120
a
157
Nachrichtenaustausch zwischen
116
a und
117
a
158
a Nachrichtenaustausch zwischen
117
a und
118
a
158
b Nachrichtenaustausch zwischen
116
a und
117
a
158
c Verbindungsaufbau zu Benuter_B
159
Klasse Vermittlungsautomatkern_einheit
160
Klasse Benachrichtigungskern_einheit
161
Klasse Event (Ereignis)
161
a Klasse CS (Critical Section, unteilbarer Abschnitt)
162
Klasse List (Liste)
163
Struktur Registrierungs_eintrag
164
Klasse Benachrichtigungs_auftrag
165
Struktur Benachrichtigungs_parameter
166
abstrakte Klasse Gerät
167
Struktur Benachrichtigungs_parameter_gerät
168
Klasse Gerät_FON
169
Klasse Gerät_FAX
170
Klasse Gerät_PAGER
171
Klasse Gerät_SMS
172
Klasse Gerät_E_MAIL
173
Klasse Gerät_ALLG_KOMM
174
Benutzt-Beziehung zwischen
159
und
160
175
Hat-Beziehung zwischen
160
und
161
175
a Hat-Beziehung zwischen
160
und
161
176
Hat-Beziehung zwischen
166
und
161
177
Benutzt-Beziehung zwischen
163
und
161
178
Benutzt-Beziehung zwischen
160
und
163
179
Hat-Beziehung zwischen
162
und
163
180
Hat-Beziehung zwischen
160
und
162
181
Benutzt-Beziehung zwischen
160
und
164
182
Bidirektionale referenzielle Hat-Beziehung zwischen
164
und
162
183
Hat-Beziehung zwischen
162
und
165
184
Benutzt-Beziehung zwischen
164
und
165
185
Benutzt-Beziehung zwischen
164
und
167
186
Benutzt-Beziehung zwischen
166
und
167
187
Benutzt-Beziehung zwischen
166
und
160
188
Vererbungs-Beziehung zwischen
168
und
166
189
Vererbungs-Beziehung zwischen
169
und
166
190
Vererbungs-Beziehung zwischen
170
und
166
191
Vererbungs-Beziehung zwischen
171
und
166
192
Vererbungs-Beziehung zwischen
172
und
166
193
Vererbungs-Beziehung zwischen
173
und
166
194
Benutzt-Beziehung zwischen
168
und
167
195
Benutzt-Beziehung zwischen
169
und
167
196
Benutzt-Beziehung zwischen
170
und
167
197
Benutzt-Beziehung zwischen
171
und
167
198
Benutzt-Beziehung zwischen
172
und
167
199
Benutzt-Beziehung zwischen
173
und
167
200
Eingangsblock
201
Bearbeitungsblock
202
Bearbeitungsblock
203
Ausgangsblock
204
Eingangsblock
205
Ausgangsblock
206
Eingangsblock
207
Bearbeitungsblock
208
Bearbeitungsblock
209
Ausgangsblock
210
Eingangsblock
211
Bearbeitungsblock
212
Entscheidungsblock
213
Bearbeitungsblock
214
Entscheidungsblock
215
Bearbeitungsblock
216
Bearbeitungsblock
217
Entscheidungsblock
218
Bearbeitungsblock
219
Ausgangsblock
220
Ablaufpfad zwischen Block
200
und Block
201
221
Ablaufpfad zwischen Block
201
und Block
202
222
Ablaufpfad zwischen Block
202
und Block
203
223
Ablaufpfad zwischen Block
204
und Block
205
224
Ablaufpfad zwischen Block
206
und Block
207
225
Ablaufpfad zwischen Block
207
und Block
208
226
Ablaufpfad zwischen Block
208
und Block
209
227
Ablaufpfad zwischen Block
210
und Block
211
228
Ablaufpfad zwischen Block
215
und Block
211
229
Ablaufpfad zwischen Block
211
und Block
212
230
Ablaufpfad zwischen Block
212
und Block
213
231
Ablaufpfad zwischen Block
213
und Block
214
232
Ablaufpfad zwischen Block
214
und Block
215
233
Ablaufpfad zwischen Block
214
und Block
216
234
Ablaufpfad zwischen Block
212
und Block
218
235
Ablaufpfad zwisc 18471 00070 552 001000280000000200012000285911836000040 0002019835092 00004 18352hen Block
217
und Block
211
236
Ablaufpfad zwischen Block
216
und Block
217
237
Ablaufpfad zwischen Block
217
und Block
218
238
Ablaufpfad zwischen Block
218
und Block
219
239
Eingangsblock
240
Bearbeitungsblock
241
Bearbeitungsblock
242
Bearbeitungsblock
243
Ausgangsblock
244
Eingangsblock
245
Bearbeitungsblock
246
Ausgangsblock
247
Eingangsblock
248
Bearbeitungsblock
249
Ausgangsblock
250
Eingangsblock
250
a Bearbeitungsblock
251
Ausgangsblock
252
Eingangsblock
253
Entscheidungsblock
254
Ausgangsblock
255
Entscheidungsblock
256
Bearbeitungsblock
257
Ausgangsblock
258
Bearbeitungsblock
259
Entscheidungsblock
260
Bearbeitungsblock
261
Entscheidungsblock
262
Bearbeitungsblock
263
Entscheidungsblock
264
Entscheidungsblock
265
Ausgangsblock
266
Bearbeitungsblock
267
Ausgangsblock
268
Ablaufpfad zwischen Block
239
und Block
240
269
Ablaufpfad zwischen Block
240
und Block
241
270
Ablaufpfad zwischen Block
241
und Block
242
271
Ablaufpfad zwischen Block
242
und Block
243
272
Ablaufpfad zwischen Block
244
und Block
245
273
Ablaufpfad zwischen Block
245
und Block
246
274
Ablaufpfad zwischen Block
247
und Block
248
275
Ablaufpfad zwischen Block
248
und Block
249
276
Ablaufpfad zwischen Block
250
und Block
250
a
276
a Ablaufpfad zwischen Block
250
a und Block
251
277
Ablaufpfad zwischen Block
252
und Block
253
278
Ablaufpfad zwischen Block
253
und Block
254
279
Ablaufpfad zwischen Block
253
und Block
255
280
Ablaufpfad zwischen Block
255
und Block
256
281
Ablaufpfad zwischen Block
256
und Block
257
282
Ablaufpfad zwischen Block
262
und Block
255
283
Ablaufpfad zwischen Block
258
und Block
255
284
Ablaufpfad zwischen Block
255
und Block
259
285
Ablaufpfad zwischen Block
259
und Block
258
286
Ablaufpfad zwischen Block
259
und Block
261
287
Ablaufpfad zwischen Block
261
und Block
260
288
Ablaufpfad zwischen Block
260
und Block
263
289
Ablaufpfad zwischen Block
263
und Block
262
290
Ablaufpfad zwischen Block
261
und Block
264
291
Ablaufpfad zwischen Block
263
und Block
264
292
Ablaufpfad zwischen Block
264
und Block
265
293
Ablaufpfad zwischen Block
264
und Block
266
294
Ablaufpfad zwischen Block
266
und Block
267
295
Eingangsblock
296
Bearbeitungsblock
297
Bearbeitungsblock
298
Ausgangsblock
299
Eingangsblock
300
Bearbeitungsblock
301
Bearbeitungsblock
302
Bearbeitungsblock
303
Bearbeitungsblock
304
Bearbeitungsblock
305
Ausgangsblock
306
Eingangsblock
307
Bearbeitungsblock
308
Bearbeitungsblock
309
Bearbeitungsblock
310
Ausgangsblock
311
Eingangsblock
312
Bearbeitungsblock
313
Bearbeitungsblock
314
Entscheidungsblock
315
Bearbeitungsblock
316
Entscheidungsblock
317
Bearbeitungsblock
318
Entscheidungsblock
319
Bearbeitungsblock
320
Bearbeitungsblock
321
Ausgangsblock
322
Eingangsblock
323
Bearbeitungsblock
324
Bearbeitungsblock
325
Entscheidungsblock
326
Bearbeitungsblock
327
Entscheidungsblock
328
Bearbeitungsblock
329
Bearbeitungsblock
330
Bearbeitungsblock
331
Ausgangsblock
332
Eingangsblock
333
Bearbeitungsblock
334
Entscheidungsblock
335
Ausgangsblock
336
Bearbeitungsblock
337
Bearbeitungsblock
338
Bearbeitungsblock
339
Eingangsblock
340
Bearbeitungsblock
341
Ausgangsblock
342
Entscheidungsblock
343
Bearbeitungsblock
344
Bearbeitungsblock
345
Ablaufpfad zwischen Block
295
und Block
296
346
Ablaufpfad zwischen Block
296
und Block
297
347
Ablaufpfad zwischen Block
297
und Block
298
348
Ablaufpfad zwischen Block
299
und Block
300
349
Ablaufpfad zwischen Block
300
und Block
301
351
Ablaufpfad zwischen Block
301
und Block
302
352
Ablaufpfad zwischen Block
302
und Block
303
353
Ablaufpfad zwischen Block
304
und Block
305
354
Ablaufpfad zwischen Block
306
und Block
307
355
Ablaufpfad zwischen Block
307
und Block
308
356
Ablaufpfad zwischen Block
308
und Block
309
357
Ablaufpfad zwischen Block
309
und Block
310
358
Ablaufpfad zwischen Block
311
und Block
312
359
Ablaufpfad zwischen Block
312
und Block
313
360
Ablaufpfad zwischen Block
313
und Block
314
361
Ablaufpfad zwischen Block
314
und Block
320
362
Ablaufpfad zwischen Block
314
und Block
315
363
Ablaufpfad zwischen Block
315
und Block
316
364
Ablaufpfad zwischen Block
316
und Block
314
a
364
a Ablaufpfad zwischen Block
314
a und Block
314
365
Ablaufpfad zwischen Block
316
und Block
317
366
Ablaufpfad zwischen Block
317
und Block
318
367
Ablaufpfad zwischen Block
318
und Block
314
a
368
Ablaufpfad zwischen Block
318
und Block
319
369
Ablaufpfad zwischen Block
319
und Block
314
a
370
Ablaufpfad zwischen Block
320
und Block
321
371
Ablaufpfad zwischen Block
322
und Block
323
372
Ablaufpfad zwischen Block
323
und Block
324
373
Ablaufpfad zwischen Block
324
und Block
325
374
Ablaufpfad zwischen Block
325
und Block
330
375
Ablaufpfad zwischen Block
325
und Block
326
376
Ablaufpfad zwischen Block
326
und Block
327
377
Ablaufpfad zwischen Block
327
und Block
329
378
Ablaufpfad zwischen Block
327
und Block
328
379
Ablaufpfad zwischen Block
328
und Block
329
380
Ablaufpfad zwischen Block
329
und Block
325
381
Ablaufpfad zwischen Block
330
und Block
331
382
Ablaufpfad zwischen Block
332
und Block
333
383
Ablaufpfad zwischen Block
333
und Block
334
384
Ablaufpfad zwischen Block
334
und Block
335
385
Ablaufpfad zwischen Block
334
und Block
336
386
Ablaufpfad zwischen Block
336
und Block
337
387
Ablaufpfad zwischen Block
337
und Block
338
388
Ablaufpfad zwischen Block
338
und Block
334
389
Ablaufpfad zwischen Block
339
und Block
340
390
Ablaufpfad zwischen Block
340
und Block
342
391
Ablaufpfad zwischen Block
342
und Block
341
392
Ablaufpfad zwischen Block
342
und Block
343
393
Ablaufpfad zwischen Block
343
und Block
344
394
Ablaufpfad zwischen Block
344
und Block
394
395
Eingangsblock
396
Bearbeitungsblock
397
Bearbeitungsblock
398
Entscheidungsblock
399
Bearbeitungsblock
400
Bearbeitungsblock
401
Bearbeitungsblock
402
Bearbeitungsblock
403
Bearbeitungsblock
404
Bearbeitungsblock
405
Ausgangsblock
406
Eingangsblock
407
Bearbeitungsblock
408
Entscheidungsblock
409
Bearbeitungsblock
410
Entscheidungsblock
411
Bearbeitungsblock
412
Bearbeitungsblock
413
Entscheidungsblock
414
Bearbeitungsblock
415
Entscheidungsblock
416
Bearbeitungsblock
417
Bearbeitungsblock
418
Ausgangsblock
419
Entscheidungsblock
420
Bearbeitungsblock
421
Entscheidungsblock
422
Bearbeitungsblock
423
Bearbeitungsblock
424
Ausgangsblock
425
Ablaufpfad zwischen Block
395
und Block
396
426
Ablaufpfad zwischen Block
396
und Block
397
427
Ablaufpfad zwischen Block
397
und Block
398
428
Ablaufpfad zwischen Block
398
und Block
403
429
Ablaufpfad zwischen Block
398
und Block
399
430
Ablaufpfad zwischen Block
399
und Block
400
431
Ablaufpfad zwischen Block
400
und Block
401
432
Ablaufpfad zwischen Block
401
und Block
402
433
Ablaufpfad zwischen Block
402
und Block
397
434
Ablaufpfad zwischen Block
403
und Block
404
435
Ablaufpfad zwischen Block
404
und Block
405
436
Ablaufpfad zwischen Block
406
und Block
407
437
Ablaufpfad zwischen Block
407
und Block
408
438
Ablaufpfad zwischen Block
408
und Block
423
439
Ablaufpfad zwischen Block
408
und Block
409
440
Ablaufpfad zwischen Block
409
und Block
410
441
Ablaufpfad zwischen Block
410
und Block
421
442
Ablaufpfad zwischen Block
410
und Block
412
443
Ablaufpfad zwischen Block
412
und Block
413
444
Ablaufpfad zwischen Block
413
und Block
414
445
Ablaufpfad zwischen Block
414
und Block
411
446
Ablaufpfad zwischen Block
411
und Block
410
447
Ablaufpfad zwischen Block
413
und Block
415
448
Ablaufpfad zwischen Block
415
und Block
416
449
Ablaufpfad zwischen Block
416
und Block
417
450
Ablaufpfad zwischen Block
417
und Block
418
451
Ablaufpfad zwischen Block
415
und Block
419
452
Ablaufpfad zwischen Block
419
und Block
420
453
Ablaufpfad zwischen Block
420
und Block
411
454
Ablaufpfad zwischen Block
419
und Block
411
455
Ablaufpfad zwischen Block
421
und Block
422
456
Ablaufpfad zwischen Block
421
und Block
423
457
Ablaufpfad zwischen Block
422
und Block
223
458
Ablaufpfad zwischen Block
423
und Block
424
501
Tabelle_Anzeige
502
Tabelle_Dialog_Start
503
Tabelle_Dialog_Fortgesetzt
504
Tabelle_Selbstbeschreibung
505
Tabelle_Suchbeschreibung
506
Tabelle_Nachricht
507
Tabelle_Kontakt
508
Tabelle_Benachrichtigungs_Kopf
509
Tabelle_Benachrichtigungs_Adresse
510
1 : N Relation Tabelle_Anzeige-Tabelle_Dialog_Start
511
1 : N Relation Tabelle_Anzeige-Tabelle_Selbstbeschreibung
512
1 : N Relation Tabelle_Anzeige-Tabelle_Suchbeschreibung
513
1 : N Relation Tabelle_Anzeige-Tabelle_Nachricht
514
1 : N Relation Tabelle_Anzeige-Tabelle_Kontakt
515
1 : 1 Relation Tabelle_Anzeige-Tabelle_Benachrichtigungs_Kopf
516
1 : N Relation Tabelle_Dialog_Start-Tabelle_Dialog_Fortgesetzt
517
1 : N Relation Tabelle_Dialog_Start-Tabelle_Selbstbeschreibung
518
1 : N Relation Tabelle_Dialog_Start-Tabelle_Suchbeschreibung
519
1 : N Relation Tabelle_Dialog_Start-Tabelle_Nachricht
520
1 : N Relation Tabelle_Dialog_Start-Tabelle_Kontakt
521
1 : 1 Relation Tabelle_Dialog_Start-Tabelle_Benachrichtigungs_Kopf
522
1 : N Relation Tabelle_Dialog_Fortgesetzt-Tabelle_Selbstbeschreibung
523
1 : N Relation Tabelle_Dialog_Fortgesetzt-Tabelle_Suchbeschreibung
524
1 : N Relation Tabelle_Dialog_Fortgesetzt-Tabelle_Nachricht
525
1 : N Relation Tabelle_Dialog_Fortgesetzt-Tabelle_Kontakt
526
1 : N Relation Tabelle_Benachrichtigungs_Kopf-Tabelle_ Benachrichtigungs_Adresse
527
Bedienseite
528
Logo-Bereich
529
Werbungs-Bereich
530
Hauptdarstellungs-Bereich
531
Modusdarstellungs-Bereich
532
Hilfsinformationen-Bereich
533
Navigationsbedienraum
534
Navigationselementegruppe
535
Navigationsbedienelement
536
Navigationsbedienelement
537
Navigationsbedienelement
538
Navigationsbedienelement
539
Navigationsbedienelement
540
Navigationsbedienelement
541
Navigationsbedienelement
542
Navigationsbedienelement
543
Indikatordarstellungsbereich
544
Animationsdarstellungsbereich
545
Textdarstellungsbereich
546
Navigationselementbereich
547
Ausprägung Indikator (Selektiert)
548
Ausprägung Animation (Selektiert)
549
Ausprägung Textdarstellung (Selektiert)
550
Ausprägung Navigationselement (Selektiert)
551
Ausprägung Animation (Deselektiert)
552
Ausprägung Textdarstellung (Deselektiert)
553
Ausprägung Navigationselement (Deselektiert)
554
Bediensymboldarstellungsbereich
1
(Wert verringern)
555
Balkendarstellung
556
Animationsdarstellungsbereich
557
Bediensymboldarstellungsbereich (Wert vergrößern)
558
Darstellungungsbereich Werteart
559
textueller Wertedarstellungsbereich
560
textueller Einheitendarstellungsbereich
561
Ausprägung Werteart
562
Ausprägung Bediensymbol (Wert verringern)
563
Ausprägung symbolische Werterepäsentierung
564
Ausprägung Balken
565
Ausprägung Bediensymbol (Wert vergrößern)
566
Ausprägung textueller Wert
567
Ausprägung Werteart
568
Ausprägung Bediensymbol (Wert verringern)
569
Ausprägung Wertebereichsangabe-Minimum
570
Ausprägung Wertebereichsangabe-Maximum
571
Ausprägung Bediensymbol (Wert vergrößern)
572
Ausprägung textueller Wert
573
Ausprägung Einheitendarstellung

Claims (19)

1. Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems, insbesonde­ re zur Vermittlung von Personenkontakten, bei dem Nachrichten in Form von Anzei­ gen und Suchfragen über einen Terminal in einen Rechner eingegeben, hier auf Pass­ fähigkeit verglichen werden und abrufbar sind, dadurch gekennzeichnet, dass eine vom Rechner veranlasste automatische Benachrichtigung der Person, für die ei­ ne passfähige Nachricht in das Vermittlungssystem eingegangen ist, durch Senden einer Meldung des Rechners zu einer von dieser Person benannten Kommunikati­ onseinrichtung erfolgt, die Meldung natürlich sprachlich codiert ist und/oder eine durch Sprachsynthese erzeugte natürlich sprachlich codierte Nachricht ist und die benachrichtigte Person zu einem von ihr zu bestimmenden Zeitpunkt über Fernabfra­ ge die passfähige Nachricht abhören und/oder abrufen und/oder einsehen kann und dabei selbst adressierte Nachrichten eingeben kann.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass nach der Ermittlung der Personen, für die eine passfähige Nachricht in das Vermitt­ lungssystem eingegangen ist und vor dem Senden einer Meldung an die jeweils von diesen Personen benannte Kommunikationseinrichtung, eine Rückmeldung über die­ se Personen an den Terminal, bei dem die Nachrichteneingabe zur Vermittlung er­ folgte oder einen bei der Nachrichteneingabe benannten, zum Zwecke einer Zwi­ schenauswahl vorgesehen ist.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass bei der Zwischenauswahl in den Terminal eingegebene Daten vom Terminal aus ein direktes Senden einer Meldung des Rechners zu einer ausgewählten und von dieser Person benannten Kommunikationseinrichtung bewirken.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Zahl der Personen, für die eine passfähige Nachricht in das Vermittlungssystem eingegangen ist, begrenzbar ist, und beim Überschreiten der vorgegebenen Zahl re­ chentechnisch eine Verschärfung der mit der Nachrichteneingabe benannten Such­ kriterien durch eine Wichtung erfolgt.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die passfähige Zuordnung einer Nachricht zu einer Person durch einen rechentechni­ schen Vergleich von Gesichtsmerkmals-Profilen erfolgt.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass als Gesichtsmerkmals-Profile in den Rechner eingegebene Daten zu Gesichtsgeome­ trien: Augengröße, Augenabstand, Nasenhöhe und Nasenbreite sowie Kopfkonturpa­ rameter genutzt werden.
7. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die passfähige Zuordnung einer Nachricht zu einer Person durch einen rechentechni­ schen Vergleich taktiler Eingabemerkmals-Profile erfolgt.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass als taktile Eingabemerkmals-Profile insbesondere vom Rechner erfasste Bedienak­ tionen des Benutzers, die Gesamtdauer einer Bediensequenz, Zeiten zwischen kom­ plexen Bediensequenzen, Zeiten zwischen einzelnen Bedienaktionen, die Dauer ei­ ner einzelnen Aktion, die Dauer zwischen dem Darstellen einer einzelnen Einga­ bemöglichkeit sowie die Reaktion darauf sowie die Dauer zwischen dem Darstellen mehrerer Eingabemöglichkeiten und die Reaktion darauf ausgewertet werden.
9. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die passfähige Zuordnung einer Nachricht zu einer Person durch den rechentechni­ schen Vergleich von Sprachmerkmals-Profilen erfolgt.
10. Verfahren nach einem der vorgenannten Ansprüche, dadurch gekennzeichnet, dass die passfähige Zuordnung einer Nachricht zu einer Person durch den rechentechni­ schen Vergleich mehrerer Profile, nämlich von Gesichtsmerkmals-Profilen und/oder taktilen Eingabemerkmals-Profilen und/oder Sprachmerkmals-Profilen, erfolgt.
11. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Person, die eine Anzeige, eine Antwort auf eine Anzeige oder eine Rückantwort in das Vermittlungssystem einbringt, neben einer Kommunikationseinrichtung wie Telefon, Pager, short-messages-servicefähiges Kommunikationsgerät, Faxgerät, elektronik-mailfähige Kommunikationsgeräte und allgemeinen Sende- und Emp­ fangsgeräte Randbedienungen zur Datenübermittlung benennen kann wie Datumsbe­ reiche, Wochentage, Tageszeiten, Benachrichtigungspriorität bei Angabe von mehre­ ren Benachrichtigungszielen, Benachrichtigungsintervall und Zeitlimit für einzelne Benachrichtigungsversuche des Rechners.
12. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Person, die eine Nachricht in das Vermittlungssystem eingibt, durch in den Rechner eingegebene und durch diesen verarbeitete Daten bestimmt, ob
  • a) eine anonyme Meldung des Rechners, d. h., es wird nur übermittelt, dass eine oder mehrere Nachrichten in das Vermittlungssystem eingegangen sind ohne Hinweis auf die Person die die Benachrichtigungsziele in das Vermittlungssystem eingebracht hat;
  • b) eine personenbezogene Meldung des Rechners, d. h., es wird übermittelt, dass eine oder mehrere Nachrichten in das Vermittlungssystem eingegangen sind mit einem frei bestimmbaren Hinweis auf die Person, die die Benachrichtigungsziele in das Vermittlungsautomatensystem eingebracht hat; oder
  • c) eine vollständige Meldung des Rechners, d. h., es wird übermittelt, das eine oder mehrere Nachrichten in das Vermittlungssystem eingegangen sind und optional ein frei bestimmbarer Hinweis auf die Person, die die Benachrichtigungsziele in das Vermittlungssystem eingebracht hat sowie den Inhalt der Nachricht oder von Teilen der Nachricht;
übermittelt wird.
13. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Person, die eine Nachricht in das Vermittlungssystem eingibt, durch in den Rechner eingegebene und durch diesen verarbeitete Daten bestimmt, welche Nach­ richten zu ihrer Person allen Benutzern des Vermittlungssystems zugänglich sein sollen.
14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass die Nachrichten, die allen Benutzern zugänglich sind, durch eine Nachrichteneingabe der Benutzer ergänzbar sind und die ergänzenden Nachrichten rechentechnisch auf­ bereitet, vorzugsweise zusammengefaßt, und angezeigt werden und/oder durch jeden Benutzer abrufbar sind.
15. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Datenabgleich innerhalb des aus drei Ebenen bestehenden Rechners einer dy­ namischen Anpassung unterliegt, so dass nach dem Eingang einer großen Daten­ menge die Zykluszeit für den Datenabgleichvorgang verringert wird und bei dem Eingang einer kleinen Datenmenge die Zykluszeit für den Datenabgleichvorgang er­ höht wird.
16. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Zugriff auf die Eingabe und Abfragen in und aus dem Terminal mit Personeni­ dentifizierung und Zugriffsberechtigung erfolgt, vorzugsweise fingercodiert.
17. Verfahren nach Anspruch 1 und 13, dadurch gekennzeichnet, dass die in den Terminal eingegebenen Nachrichten im Rechner, vorzugsweise durch den Vermittlungsautomat-Local-Server und/oder den Vermittlungsautomat-Clients zu­ sätzlich verarbeitet werden, um ein Persönlichkeitsprofil über die eingebende Person zu erstellen und auf dieser Grundlage im Vermittlungssystem gespeicherte Daten, vorzugsweise Produktinformationen, aufgerufen und der eingebenden Person noch während der Eingabe oder unmittelbar danach sprachlich und/oder visuell mitgeteilt werden.
18. Verfahren nach Anspruch 1 und 17, dadurch gekennzeichnet, dass von der Person, die eine Nachricht in den Terminal eingibt, biometrische Daten er­ faßt und mit oder ausschließlich für die Erstellung des Persönlichkeitsprofils genutzt werden.
19. Verfahren nach Anspruch 1 und 17, dadurch gekennzeichnet, dass der eingebenden Person mitgeteilte Produktinformationen durch diese abrufbar, auch in erweitertem Informationsumfang, sind.
DE1998135092 1998-07-24 1998-07-24 Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems Expired - Fee Related DE19835092C2 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE1998135092 DE19835092C2 (de) 1998-07-24 1998-07-24 Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems
DE29902068U DE29902068U1 (de) 1998-07-24 1999-01-29 Computergesteuertes Vermittlungssystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1998135092 DE19835092C2 (de) 1998-07-24 1998-07-24 Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems

Publications (2)

Publication Number Publication Date
DE19835092A1 DE19835092A1 (de) 2000-02-03
DE19835092C2 true DE19835092C2 (de) 2001-04-12

Family

ID=7876355

Family Applications (2)

Application Number Title Priority Date Filing Date
DE1998135092 Expired - Fee Related DE19835092C2 (de) 1998-07-24 1998-07-24 Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems
DE29902068U Expired - Lifetime DE29902068U1 (de) 1998-07-24 1999-01-29 Computergesteuertes Vermittlungssystem

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE29902068U Expired - Lifetime DE29902068U1 (de) 1998-07-24 1999-01-29 Computergesteuertes Vermittlungssystem

Country Status (1)

Country Link
DE (2) DE19835092C2 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10124823A1 (de) * 2001-05-21 2002-12-05 Tenovis Gmbh & Co Kg Verfahren zur Handhabung von Audiodateien in Telekommunikationseinrichtungen sowie dazugehörige Telekommunikationseinrichtung
DE10237111A1 (de) * 2002-08-10 2004-02-19 Müller, Christian Sucheinheit, Verfahren und elektronisches Gerät zur Generierung von Suchantworten
EP2180681A1 (de) 2008-10-23 2010-04-28 Vodafone Holding GmbH Verfahren um beispielsweise mittels einer Bildsuchmaschine eine Verbindung aufzubauen

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE20101935U1 (de) * 2001-02-05 2001-06-13 Schoeller Martin Alexander Uhrenhandy mit Headset

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE9418508U1 (de) * 1994-11-19 1995-01-12 Medienhaus Luebeck Gmbh Computergesteuerter Unterhaltungsautomat, welcher zur Vermittlung zwischenmenschlicher Kontakte dienen soll
DE19629852A1 (de) * 1996-07-24 1998-01-29 Kings Gym Gmbh Digitales Annonciersystem

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE9418508U1 (de) * 1994-11-19 1995-01-12 Medienhaus Luebeck Gmbh Computergesteuerter Unterhaltungsautomat, welcher zur Vermittlung zwischenmenschlicher Kontakte dienen soll
DE19629852A1 (de) * 1996-07-24 1998-01-29 Kings Gym Gmbh Digitales Annonciersystem

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10124823A1 (de) * 2001-05-21 2002-12-05 Tenovis Gmbh & Co Kg Verfahren zur Handhabung von Audiodateien in Telekommunikationseinrichtungen sowie dazugehörige Telekommunikationseinrichtung
DE10237111A1 (de) * 2002-08-10 2004-02-19 Müller, Christian Sucheinheit, Verfahren und elektronisches Gerät zur Generierung von Suchantworten
EP2180681A1 (de) 2008-10-23 2010-04-28 Vodafone Holding GmbH Verfahren um beispielsweise mittels einer Bildsuchmaschine eine Verbindung aufzubauen
DE102008052948A1 (de) 2008-10-23 2010-04-29 Vodafone Holding Gmbh Verfahren zur Kommunikation mittels einer Vermittlungseinrichtung sowie Vermittlungseinrichtung

Also Published As

Publication number Publication date
DE19835092A1 (de) 2000-02-03
DE29902068U1 (de) 1999-05-06

Similar Documents

Publication Publication Date Title
DE602004003135T2 (de) Einheitliches management von netzressourcen für gleichzeitige teilnahme mehrerer nutzer an einer sitzung
DE60120822T2 (de) Meta-Dokument und Verfahren zum Verwalten von Meta-Dokumenten
Smith Voices from the WELL: The logic of the virtual commons
Covaleski et al. An institutional perspective on the rise, social transformation, and fall of a university budget category
DE69531599T2 (de) Verfahren und Gerät zum Auffinden und Beschaffen personalisierter Informationen
DE69923311T2 (de) Universelle formular-maschine
DE10244974A1 (de) Automatische Inserentenbenachrichtigung für ein System zum Bereitstellen eines Platz- und Preisschutzes in einer Suchergebnisliste, die durch eine Computernetzwerksuchmaschine erzeugt wird
DE10320615A1 (de) Verwendung erweiterbarer Markup-Sprache in einem System und Verfahren zum Beeinflussen einer Position auf einer Suchergebnisliste, die von einer Computernetzwerksuchmaschine erzeugt wird
DE10394323T5 (de) Verfahren und System zum Bereitstellen einer Expertenunterstützung mit einem Kundeninteraktionssystem
DE19809231A1 (de) System für verbesserte Diskussionstechnologien
DE60029334T2 (de) Selbstbedienungsterminals zum anbieten von fremdanwendungen
DE10303237A1 (de) Gefilterte Peer-To-Peer-Geschäftskommunikation in einer verteilten Computerumgebung
EP1241603A1 (de) Internet-Banner
DE102005033978A1 (de) Verfahren zum Erhöhen der Produktivität in einer Organisation
EP1145176A2 (de) Online-bestellsystem, insbesondere für gaststätten, sowie verfahren zum betrieb eines derartigen online-bestellsystems
DE60031123T2 (de) Informationsdatenbank Teilnehmerkontextes für mehrere Netzwerkdienste
DE19835092C2 (de) Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems
DE10040948A1 (de) Ein verteiltes technisches System für die Partnersuche, Partnerschaftseignungsprüfung und Bekanntmachung
DE60202822T2 (de) System und Verfahren zur Informationserfassung
DE60106721T2 (de) Verwaltung von Ereignisinformationsdaten mit einem mobilen Kommunikationsgerät
EP3076343A1 (de) Verfahren zur zuordnung sprachlicher eingaben
WO2009030489A1 (de) Computerimplementiertes system und verfahren zum strukturierten speichern von kommunikationsinformationen
DE10153500A1 (de) Verfahren zur Kommunikation zwischen Mitgliedern und Nichtmitgliedern eines Teams
WO2009030490A1 (de) Computerimplementiertes system und verfahren zum strukturierten speichern von informationen
DE69910352T2 (de) Verfahren zum Kontrollieren der Arbeitsumgebung von Betriebsangestellten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee