DE19835092C2 - Verfahren zum Betrieb eines computergesteuerten Vermittlungssystems - Google Patents
Verfahren zum Betrieb eines computergesteuerten VermittlungssystemsInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/16—Coin-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.
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.
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.
JA - beschreibt, daß eine Aussage bejaht wird.
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.
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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 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
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
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
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
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
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
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
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
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
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
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.
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;
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.
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)
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE20101935U1 (de) * | 2001-02-05 | 2001-06-13 | Schoeller Martin Alexander | Uhrenhandy mit Headset |
Citations (2)
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 |
-
1998
- 1998-07-24 DE DE1998135092 patent/DE19835092C2/de not_active Expired - Fee Related
-
1999
- 1999-01-29 DE DE29902068U patent/DE29902068U1/de not_active Expired - Lifetime
Patent Citations (2)
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)
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 |