DE69634953T2 - Anpassbare anwenderschnittstelle - Google Patents

Anpassbare anwenderschnittstelle Download PDF

Info

Publication number
DE69634953T2
DE69634953T2 DE69634953T DE69634953T DE69634953T2 DE 69634953 T2 DE69634953 T2 DE 69634953T2 DE 69634953 T DE69634953 T DE 69634953T DE 69634953 T DE69634953 T DE 69634953T DE 69634953 T2 DE69634953 T2 DE 69634953T2
Authority
DE
Germany
Prior art keywords
user
user interface
mml
database
server program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69634953T
Other languages
English (en)
Other versions
DE69634953D1 (de
Inventor
Eeva Hartikainen
Asko Suorsa
Leena Sivola
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Oyj
Original Assignee
Nokia Oyj
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Oyj filed Critical Nokia Oyj
Publication of DE69634953D1 publication Critical patent/DE69634953D1/de
Application granted granted Critical
Publication of DE69634953T2 publication Critical patent/DE69634953T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0062Provisions for network management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1305Software aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13547Indexing scheme relating to selecting arrangements in general and for multiplex systems subscriber, e.g. profile, database, database access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren gemäß dem beigefügten Anspruch 1 zur Bildung einer Benutzerschnittstelle und auf eine Benutzerschnittstelle gemäß beigefügtem Anspruch 5. Die Benutzerschnittstelle gemäß der Erfindung ist insbesondere für Telekommunikationsvermittlungen vorgesehen, doch dieselbe grundlegende Lösung kann auch für andere Verwendungszwecke angewendet werden. Solche Benutzerschnittstellen sind beispielsweise in WO 93/18598 und WO 94/10625 offenbart.
  • In Übereinstimmung mit der beigefügten 1 beinhalten Telekommunikationsvermittlungen eine Betriebs- und Instandhaltungseinheit (Operations and Maintenance Unit) OMU, welche Abläufe in Verbindung mit der Nutzung und Instandhaltung der Telekommunikationsvermittlung verarbeitet. Telekommunikationsvermittlungen können über eine OMU mit einem Betriebs- und Instandhaltungsnetzwerk (OM-Netzwerk) verbunden sein, durch welche der Anwender mehrere physisch entfernt liegende Vermittlungen zusammengefasst von einem Ort aus verwalten kann. Die OM-Einheit der Telekommunikationsvermittlung sammelt Alarme und erzeugt Alarmberichte, und sie arbeitet außerdem mit dem Hauptspeicher (nicht gezeigt) des Systems zusammen, in welchem Dateien zu Teilnehmern, Abrechnungen, Signalübertragung, Routing und Vermittlungseinstellungen gespeichert werden, wodurch der Anwender die Inhalte dieser Dateien lesen und abändern kann.
  • In der Praxis enthält die Hardware der OM-Einheit eine zentrale Prozessoreinheit (central processing unit, CPU) und eine oder mehrere Festplatteneinheiten als gesonderte Massenspeicher sowie eine oder mehrere Disketteneinheiten.
  • Die Programme der OM-Einheit und das Datenendgerät des Anwenders, welches direkt oder über das OM-Netzwerk mit der OM-Einheit verbunden ist, bildet eine Benutzerschnittstelle zwischen der Vermittlung und dem Anwender, die als MMI (Man-Machine-Interface, Mensch-Maschine-Schnittstelle) bekannt ist. Diese Benutzerschnittstelle umfasst die in 1 gezeigten Einzelteile, die beispielsweise das Datenendgerät DT beinhalten, welches mit der OM-Einheit OMU einer Vermittlung EX kommuniziert, mehrere MML-Kontroller 12, die im Speicher der OM-Einheit befindliche Programmblöcke darstellen, und ein Verarbeitungsblock 13, der einen im Speicher der OM Einheit (oder möglicherweise einer anderen Computereinheit der Vermittlung) befindlichen und mit der eigentlichen Anrufsteuerung verbundenen Programmblock darstellt. Ein einzelner MML-Kontroller 12 bedient die Ausführung von vorgegebenen Befehlen, wobei Informationen hinsichtlich dieser Befehle im MML-Kontroller kodiert sind in Bezug darauf, wie der Benutzer anzuweisen ist, welche Werte die vom Benutzer eingegebenen Parameter haben sollten, auf welche Weise ein Ausführungsbefehl zum Prozessorblock übertragen wird und auf welche Weise die vom Benutzer angegebenen Werte im Ausführungsbefehl ausgedrückt werden sollen.
  • Der Anwender erteilt Befehle über das Datenendgerät DT an die Vermittlung durch die Nutzung einer an sich bekannten Befehlssprache MML (Man-Machine-Language), deren VO-Syntax in den Empfehlungen Z.317–Z.341 der ITU-T (ehemals CCITT) näher beschrieben ist. In einer MML-Sprache gibt es für jede Funktion einen Befehl. Die Software ist hierarchisch aufgebaut; am Anfang einer Sitzung befindet sie sich auf einer Hauptebene, wobei eine Liste von Befehlsklassen auf dem Bildschirm erscheint. Die Befehlsklassen bilden eine Befehlsklassenebene, wobei beim Wählen einer Befehlsklasse der Hauptebene für den Benutzer ein Menü der Befehlsgruppen dieser Klasse (welche die nächste Ebene bilden) angezeigt wird. Jede Befehlsgruppe umfasst 4 bis 8 Befehle, wobei der gewünschte Befehl durch Auswählen des gewünschten Befehls durchgeführt werden kann. Die Aufteilung ist funktional, so dass eine Befehlsklasse für einen Funktionsblock zuständig ist, wie die Befehle für die Teilnehmerverwaltung oder das Routen (vgl. S oder R in 2). Eine Befehlsgruppe ist zuständig für eine kleinere Auswahl von zueinander in Beziehung stehenden Befehlen, wie zum Beispiel Befehle im Zusammenhang mit der Kurzwahlnummernauswahl eines Teilnehmers. Die Software ist auf Menüs aufgebaut und der Anwender wird Schritt für Schritt mittels der Menüs zum richtigen Befehl hingeleitet. Die MMI Benutzerschnittstelle ermöglicht mehrere gleichzeitige Befehlssitzungen im gleichen System. Die Sitzungen sind völlig unabhängig voneinander, jedoch so, dass die gleichzeitige Bearbeitung derselben Informationen durch verschiedene Sitzungen ausgeschlossen ist.
  • 2 zeigt das Menü auf der Hauptebene. Es legt den Namen den Namen der Befehlsklasse in Klartext neben dem Buchstaben offen, wodurch man das Befehlsgruppenmenü der Befehlsklasse durch Auswahl des Buchstabens eingeben kann, und auf gleiche Weise gibt man dort die Befehle der Gruppe durch Auswahl des Buchstabens der gewünschten Befehlsgruppe ein. Anschliessend kann der Befehl ausgeschrieben werden. Die Befehlsform könnte beispielsweise „ZRCI:GSW:NCGR=OUTGRP;" sein. Der Befehl umfasst die Befehlsbuchstaben, hier ZRCI und die darauffolgenden Parameterblöcke, durch einen Doppelpunkt abgetrennt. Ein Parameterblock kann mehr als einen Parameter beinhalten, wobei diese Parameter durch ein Komma getrennt sind. Wenn der Benutzer nur die Befehlsbuchstaben angibt, was durch das Drücken der Return-Taste beendet wird, gibt der MML-Kontroller in Textform Informationen darüber aus, welche Arten von Parametern möglicherweise genutzt werden können. Nach der Ausgabe jedes Parameters ist es auch möglich, Anweisungen bezüglich der nächsten Parameter zu erhalten. Das MML-Programm gibt dem Anwender auf allen Ebenen Anweisungen, wodurch der Anwender sehr selten in einem Handbuch nachschlagen muss. Das Erteilen von Befehlen erfordert keine speziellen Fähigkeiten, die einzige Voraussetzung ist selbstverständlich, dass der Anwender die Sprache, in der die online-Anweisungen in Textform auf dem Bildschirm ausgegeben sind, versteht.
  • Die bekannte Benutzerschnittstelle aus 1 arbeitet wie folgt. Wenn der Benutzer einen MML-Befehl erteilt wie oben beschrieben, wird der MML-Kontroller, der auf die gegebene Zeichenfolge anspricht, ausgelöst und beginnt, mit dem Benutzer über das Endgerät DT zu kommunizieren. Die Hilfe-Menüs, die vom Endgerät DT angezeigt werden und die Informationen, die für die Überprüfung der Parameterwerte notwendig sind, wurden in den MML-Kontroller kodiert (in einen Programmcode). Wenn der MML-Kontroller mit den vom Benutzer erhaltenen Parametern „zufrieden" ist, erzeugt er eine Meldung auf der Grundlage der erhaltenen Parameter und sendet sie an den Prozessorblock 13. Der Prozessorblock aktualisiert die in der vom MML-Kontroller empfangenen Meldung enthaltenen Daten in seine eigenen Parameterdaten, die in Verbindung mit der Anrufsteuerung genutzt werden. Nach dem Aktualisieren der Daten sendet der Prozessor eine Bestätigung an den MML-Kontroller, der dann den Benutzer benachrichtigt.
  • Ein Nachteil der oben beschriebenen bekannten Benutzerschnittstelle ist die dürftige Flexibilität in sich verändernden Situationen. Dieser Nachteil wird besonders offensichtlich in einer intelligenten Netzwerkumgebung, in der ständig neue Dienste für die Teilnehmer geschaffen werden. Das Hinzufügen eines neuen Dienstes erfordert entsprechende Zusätze zur Benutzerschnittstelle, damit der Dienst gesteuert werden kann. Zur Zeit sind MML-Kontroller Teil einer größeren Software der Telekommunikationsvermittlung, was bedeutet, dass Änderungen in der Benutzerschnittstelle Änderungen in der Software erfordern.
  • Wenn einige Änderungen an der Benutzerschnittstelle (das heißt, an einem MML-Befehl, der für die Steuerung der Vermittlung vorgesehen ist) gemacht werden müssen, beispielsweise nur einige Parameter hinzugefügt oder der erlaubte Wertebereich für die Parameter oder die Hilfetexte für den Benutzer geändert werden müssen, dann muss der MML-Befehl zusammen mit dem Rest des Softwarepakets neu kodiert und kompiliert werden. Wenn es zum Beispiel nötig ist, einen neuen Befehlsbuchstaben freizugeben, dann muss das gesamte Softwarepaket aktualisiert werden.
  • Die Aufgabe der vorliegenden Erfindung ist es, die oben erwähnten Nachteile zu umgehen und eine flexiblere Benutzerschnittstelle als zuvor zu verwirklichen, die auf einfache Weise an neue Betriebsbedingungen oder Situationen angepasst werden kann. Diese Aufgabe wird durch die Lösungen gemäß der Erfindung erreicht, in der das Verfahren gekennzeichnet ist durch die Beschreibung im beigefügten Anspruch 1, und die Benutzerschnittstelle ist gekennzeichnet durch die Beschreibung im beigefügten Anspruch 5.
  • Die Idee der Erfindung ist, die „Intelligenz" der Benutzerschnittstelle (das heißt, die Informationen, die mit dem Betrieb der Benutzerschnittstelle verbunden sind) in eine gesonderte Datenbank zu übertragen, wodurch die Arbeitsweise der Benutzerschnittstelle ohne Änderungen im Programmcode verändert werden kann. Praktisch bedeutet diese „Intelligenz", dass mindestens die Arten und die erlaubten Wertebereiche der genutzten Parameter (d.h. die Semantik der Parameter) und die zu den für den Benutzer angezeigten Hilfstexten gehörigen Texte in die Datenbank gespeichert werden. Zusätzlich enthält die Datenbank vorzugsweise auch Ausführungsanweisungen, die den Teil der Benutzerschnittstelle, welcher die Datenbankabfrage durchführt, darüber informiert, was als Antwort auf jeden Befehl getan werden soll.
  • Aufgrund der Lösung gemäß der Erfindung können die Änderungen oder neuen Funktionen der Benutzerschnittstelle als Änderungen oder Zusätze zur Datenbank verwirklicht werden. Der Betrieb der Benutzerschnittstelle kann daher mittels in die Datenbank gegebenen Definitionen geändert werden, wobei keine Programmierung nötig ist. Tiefgreifende Softwareänderungen können daher durch Änderungen an den in der Datenbank gespeicherten Informationen ersetzt werden, deren Änderung deutlich einfacher in der Ausführung ist.
  • Die Lösung gemäß der Erfindung erlaubt es, neue Dienste während des Betriebs einzubauen, da das Hinzufügen von Diensten durch einfaches Hinzufügen von Informationen zur Datenbank verwirklicht werden kann.
  • Die Lösung gemäß der Erfindung ist auch vorteilhaft in dem Sinne, dass die Benutzerschnittstelle sehr flexibel in eine andere Umgebung übertragen werden kann. Die Datenbank kann selbst während des Betriebs das Bilden einer Benutzerschnittstelle in mehrere Umgebungen steuern (z.B. UNIX und PC-basierte Umgebungen).
  • Im folgenden sind die Erfindung und ihre bevorzugten Ausführungsweisen genauer beschrieben, mit Bezug auf die Beispiele der 3a, 3b und 4 in den beigefügten Zeichnungen, wobei
  • 1 eine bekannte Benutzerschnittstelle einer Telekommunikationsvermittlung darstellt,
  • 2 ein Hauptmenü zeigt, das dem Benutzer in einer Benutzerschnittstelle gemäß 1 angezeigt wird,
  • 3a eine Benutzerschnittstelle gemäß 1 darstellt, wenn diese auf die in der vorliegenden Erfindung offenbarte Weise umgesetzt wird,
  • 3b die logische Struktur der in 3a gezeigten Datenbank darstellt, und
  • 4 eine bevorzugte Ausführung der Benutzerschnittstelle zeigt.
  • 3a veranschaulicht, wie die in 1 gezeigte Benutzerschnittstelle sich verändert, wenn sie entsprechend der Erfindung umgesetzt wird. Gemäß der Erfindung wurde die in bekannten MML-Kontrollern enthaltene „Intelligenz" in eine gesonderte Datenbank DB übertragen, welche derzeit Informationen darüber enthält, um welche Art von Benutzerschnittstelle es sich handelt und wie sie arbeitet. In der Datenbank werden Daten in Bezug auf die von der Benutzerschnittstelle bereitgestellten Dienste und die mit jedem Dienst verknüpften Befehle und Parameter sowie die erlaubten Werte für jeden Parameter gespeichert. Alphanumerische Daten, die für die Anzeige der Hilfstexte für den Benutzer über das Endgerät DT benötigt werden, werden ebenfalls in der Datenbank gespeichert. Die in der Datenbank ausgeführten Lese- und Schreibvorgänge werden durch einen getrennten Serverprogrammblock 33 erledigt, welcher einerseits auf Grundlage der von der Datenbank empfangenen Daten mit den MML-Kontrollern 32 und andererseits mit (einem oder mehreren) Prozessorblöcken 13 kommuniziert. Die MML-Kontroller 32 sind als gewöhnliche Programmblöcke implementiert, die in eine Verkehrsrichtung nur die Anzeige der vom Serverprogrammblock empfangenen Meldungen für den Benutzer bearbeiten, und in die andere Verkehrsrichtung Dienstanforderungen zum Serverprogrammblock übertragen. Die MML-Kontroller werden damit in so einfache Blöcke wie möglich gebracht, wodurch die Benutzerschnittstelle auf einfache Weise in eine andere Ausstattungsumgebung geändert werden kann (durch das Abändern der MML-Kontroller in einen für die jeweilige Umgebung passenden Benutzerschnittstellenblock).
  • Zusätzlich zu den semantischen Überprüfungen der Hilfstexte und Parameter gemäß der bevorzugten Ausführungsweise der Erfindung werden Daten in der Datenbank gespeichert, die sich darauf beziehen, an welchen Prozessorblock und welche Daten vom Server als Antwort auf einen vorgegebenen MML-Befehl gesendet werden sollen. Abhängig von der Ausführung kann es mehrere gesonderte Prozessorblöcke 13 geben; typischerweise gibt es einen für jeden Dienst. (Die grundlegende Idee der Erfindung kann auch im Fall nur eines Prozessorblocks verwirklicht werden.) Gemäß der bevorzugten Ausführung der Erfindung befinden sich in der Datenbank nicht nur Daten über die korrekte Eingabe eines MML-Befehls, sondern auch dazu, was als Antwort auf den Befehl getan werden soll.
  • Wenn ein neuer Befehl in die Telekommunikationsvermittlung eingeführt wird, werden Datensätze, die diesen Befehl (oder Buchstaben, die ihn kennzeichnen) als ihren Schlüssel haben, zur Datenbank hinzugefügt. Die Datensätze enthalten Informationen über die Hilfstexte und die Semantik des neuen Befehls, und darüber, was als Antwort auf den neuen Befehl getan werden soll (im Allgemeinen wird eine Meldung an irgendeinen Prozess gesendet und eine Bestätigung empfangen).
  • 3b veranschaulicht einen möglichen logischen Aufbau der Datenbank DB. Die Datenbank in diesem Beispiel ist in sieben verschiedene Blöcke (Ansammlungen von Objekten) A...G aufgeteilt. Die Beziehungen zwischen den Blöcken werden mit Pfeilen in der Abbildung angezeigt, so dass die Richtung eines Pfeils den Ablauf des Abrufs von Informationen innerhalb der Datenbank darstellt. Befehlsspezifische Daten werden in Block A gespeichert, d.h. Daten zu den verfügbaren Befehlsbuchstaben. Block B zerteilt den allgemeinen MML-Befehl in Stücke, d.h. dieser Block hat die Kennungsdaten, mittels welcher der zu dieser Zeit betroffene Dienst identifiziert wird, so dass die richtigen Parameterblöcke (ein Parameterblock bezeichnet die Parameter zwischen zwei Doppelpunkten im MML-Befehl) vom nächsten Block (Block C) angefordert werden können, welcher für jeden Parameterblock spezifische Daten zu den genutzten Befehlen enthält. Der Parameterblock D enthält alle für jeden Parameter spezifischen Daten. (Dies können zum Beispiel die Arten der Parameter und ihre Speicherstellen im Block sein.) Anschließend geht der Prozess weiter zu Block E, welcher Daten zu den erlaubten Wertebereichen der Parameter enthält. Der nächste Block (Block F) umfasst die alphanumerischen Daten (Hilfstexte), welche zum Bilden der Hilfsmeldungen benötigt werden. Dieser Block kann auch vorher von den Blöcken A bis D aus betreten werden, je nach dem, in welcher Stufe der Benutzer angewiesen werden soll.
  • Block G umfasst die nötigen Ausführungsanweisungen. Wenn der Benutzer den vollständigen Befehl eingegeben hat, werden von Block G Informationen zum weiteren Vorgehen empfangen. Dieser Block enthält Informationen darüber, welche Art von Meldung gebildet werden soll und wohin sie gesendet werden soll.
  • Der Serverprogrammblock 33 (der im folgenden als Server bezeichnet wird) kann in der Praxis so implementiert werden (in einer an sich bekannten Weise), dass er eine Hauptkomponente und eine Nebenkomponente umfasst. Die Hauptkomponente belegt eine Nebenkomponente für eine MML-Sitzung. Es können mehrere Nebenkomponenten gleichzeitig belegt werden, doch ihre Zahl darf die Zahl der offenen MML-Sitzungen nicht überschreiten.
  • Die Benutzerschnittstelle gemäß der Erfindung arbeitet so, dass die angeforderten Informationen auf der Grundlage der Teile des vom Benutzer gelieferten MML-Befehls aus der Datenbank geholt werden. In Verbindung mit dem Befehl „KUA:A_VALID:1234567;" wird beispielsweise die Datenbank überprüft, ob der zu den Befehlsbuchstaben KUA gehörige Befehl existiert, ob ein Dienst A_VALID existiert und ob die Telefonnummer 1234567 innerhalb eines bestimmten, in der Datenbank festgelegten Intervalls liegt. Im folgenden wird der Arbeitsablauf der in 3a offenbarten Benutzerschnittstelle ausführlicher beschrieben, indem als Beispiel eine Situation genutzt wird, in der der Benutzer den Befehl „XYZ:ID:56:" vom Endgerät aus eingibt (die eingegebene Zeichenfolge ist in Anführungszeichen dargestellt). Die Vorgänge werden in zeitlicher Abfolge dargestellt, beginnend mit einer Situation, in der der erste Teil des Befehls „XYZ:ID:" bereits gegeben wurde und der Wert des letzten Parameters (56) noch angegeben werden muss.
    • 1. Der Benutzer gibt „XYZ:ID:<ret>" (das Zeichen <ret> stellt das Drücken der Rücklauf-[„Return"-] oder Eingabetaste dar, was im Fall einer MML-Befehlssprache einen Hilfebedarf anzeigt) am MML-Endgerät ein, wodurch der (in Bezug auf den Befehl) richtige MML-Kontroller ausgelöst wird. Der richtige Kontroller wird durch die Buchstaben „XYZ" identifiziert.
    • 2. Der MML-Kontroller erzeugt und sendet an den Server eine Hilfsanforderungsmeldung, welche die Daten vorweist, die der Benutzer schon geliefert hat. Der MML-Kontroller fordert mit dieser Meldung Anweisungen für die nach XYZ:ID zu liefernden Daten an. Wenn der Benutzer nur die Zeichen „XYZ:<ret>" eingegeben hätte, darin hätte der MML-Kontroller Anweisungen für die nach XYZ einzugebenden Daten angefordert.
    • 3. Der Server bildet eine Anfrage an die Datenbank auf Grundlage der empfangenen Hilfsanforderungsmeldung. Als Ergebnis der Anfrage erhält der Server die Textbausteine, die an den MML-Kontroller gesendet werden müssen sowie die Einschränkungen, die zu den in den Textbausteinen gezeigten Parametern, die vom Benutzer angefordert werden müssen, gehören. (Datentypen und erlaubte Wertebereiche).
    • 4. Der Server bildet einen Hilfstext und sendet diesen an den MML-Kontroller, auf Grundlage der Daten, die der Server von der Datenbank erhalten hat.
    • 5. Der MML-Kontroller druckt den empfangenen Hilfetext als solchen am Endgerät DT aus, wodurch der Benutzer den Text sieht.
    • 6. Der Benutzer gibt anhand des erhaltenen Hilfstextes zusätzliche Daten über die Tastatur des Endgeräts ein. (In diesem Fall gibt der Benutzer die Zeichenfolge „XYZ:ID:56<ret>" ein.)
    • 7. Anhand der vom Benutzer gegebenen Daten erzeugt der MML-Kontroller eine Prüfanforderungsmeldung, die die Speicherstellen der zu überprüfenden Parameter sowie ihre Werte enthält und sendet die Meldung an den Server.
    • 8. Der Server führt eine Anfrage an die Datenbank DB durch anhand der Prüfanforderungsmeldung, die er erhalten hat. Als Ergebnis der Anfrage erhält der Server Informationen über die Art der Parameter und die Beschränkungen der Parameterwerte. Unter Benutzung dieser Informationen überprüft der Server die Gültigkeit des vom Benutzer angegebenen Parameters (die Überprüfung der Semantik des Parameters).
    • 9. Der Server benachrichtigt den MML-Kontroller über das Ergebnis der von ihm ausgeführten Überprüfung.
    • 10. Wenn die gelieferten Parameter die Überprüfung bestanden haben, druckt der MML-Kontroller die gegebene Zeichenfolge und ersetzt das <ret>-Zeichen am Ende durch einen Doppelpunkt.
    • 11. Der Benutzer zeigt seine/ihre Zustimmung zur Ausführung der geprüften Zeichenfolge durch das Eingeben eines Semikolons am Ende der Zeichenfolge (wodurch die endgültige Zeichenfolge die Form „XYZ:ID:56:;" hat).
    • 12. Der MML-Kontroller bildet auf der Grundlage der Zeichenfolge eine Ausführungsanforderungsmeldung, welche er an den Server sendet als Aufforderung an den Server, den durch die Zeichenfolge gekennzeichneten Befehl auszuführen.
    • 13. Der Server bildet eine Anfrage an die Datenbank anhand der vom Server erhaltenen Ausführungsanforderungsmeldung. Als Ergebnis der Anfrage erhält der Server die Informationen, die er zur Ausführung des Befehls benötigt. Auf der Grundlage dieser Informationen sendet der Server eine Meldung an den Prozessorblock als Aufforderung, den Befehl auszuführen. Der Prozessorblock kann eine Bestätigung über die erhaltene Meldung senden.
    • 14. Der Server erzeugt eine Meldung, mit der die Ausführung bestätigt wird und sendet sie an den MML-Kontroller. Die Bestätigungsmeldung enthält auch die eventuellen Ausführungsprotokolle. Der MML-Kontroller überträgt die Daten zum Benutzer und liefert eine Benachrichtigung über die beendete Ausführung.
  • Es sollte zur Kenntnis genommen werden, dass für den Fall, dass der Benutzer ursprünglich oder in Schritt 6 die Zeichenfolge „XYZ:ID:56:;" in ihrer richtigen Form geschrieben hätte, die Benutzerschnittstelle die Ausführung ab Schritt 7 begonnen hätte und nach Schritt 9 direkt zu den Schritten 12 bis 14 weitergegangen wäre.
  • Die oben bei Schritt 8 beschriebene Überprüfung wird so ausgeführt, dass die ASCII-Zeichenfolge, die vom MML-Kontroller gesendet wird, zuerst in einen (numerischen) Wert entsprechend dem jeweiligen Parametertyp umgewandelt wird. Wenn die Umwandlung erfolgreich ist (wodurch der gegebene Parameter vom gewünschten Typ ist), wird eine Überprüfung des Wertebereichs anhand des in der Datenbank gespeicherten Wertebereichs durchgeführt.
  • Es gibt vier Arten von Meldungen, welche MML-Kontroller an die Server schicken: Meldungen zur Sitzungsinitialisierung, Anweisungsanforderungsmeldungen, Prüfanforderungsmeldungen und Ausführungsanforderungsmeldungen. Eine Meldung zur Sitzungsinitialisierung enthält eine Befehlskennung. Der Server antwortet auf die Meldung mit Daten zur Befehlsberechtigung, die er aus der Datenbank gewinnt. Eine Anweisungsanforderungsmeldung enthält Daten darüber, zu welchem Parameter Anweisungen angefordert werden. Der Server antwortet mit dem Senden eines Hilfstexts. Eine Prüfanforderungsnachricht enthält Daten darüber, für welchen Parameter die Prüfung angefordert wird und den Wert des Parameters. Eine Meldung kann mehrere dieser Paare beinhalten, oder jeder Parameterwert kann durch seine eigene Meldung überprüft werden. In einer Ausführungsanforderungsmeldung müssen keine spezifischen Parameter gesendet werden. Wenn der Server nicht die Werte aller notwendigen Parameter kennt, sendet er einen Fehlercode, abhängig vom Befehl (andernfalls sendet er den Befehl zur Ausführung).
  • Ein Beispiel eines zu gebenden Befehls könnte das Hinzufügen eines Teilnehmer zu einem gegebenen Dienst sein. In der Praxis könnte dieser Befehl von der Form „KUA:SERVICE1:1000,3;" sein, was bedeutet, dass ein Teilnehmer mit einer Teilnehmerkennung 1000 und einer Teilnehmerklasse 3 zum Dienst SERVICE1 hinzugefügt wird. Wenn Daten zum Typ und Wertebereich jedes Parameters des Dienstes in die Datenbank gespeichert werden, dann könnte dies sein wie in der folgenden Tabelle gezeigt:
  • Figure 00090001
  • In diesem Beispielfall könnten die in der Datenbank zu speichernden Texte z.B. die folgenden Fehlertexte enthalten: „angegebene Teilnehmerkennung wird bereits benutzt", „die angegebene Teilnehmerklasse ist falsch", „ die Datenbank ist nicht im normalen Modus, bitte nach einiger Zeit erneut versuchen", etc.
  • Eine Benutzerschnittstelle kann auf die oben beschriebene Weise ohne Umstände in verschiedenen Ausstattungsumgebungen gebildet werden. Dies findet solchermaßen statt, dass ein eigener Programmblock (Benutzerschnittstellenblock) für jede Ausstattungsumgebung geschaffen wird, der in seiner Funktionsweise den in 3 gezeigten MML-Kontrollern entspricht. Diese Ausführungsform ist in 4 dargestellt, wo der Programmblock der ersten Benutzerumgebung (z.B. Unix-Umgebung) durch Referenz 42a gekennzeichnet ist, der Programmblock der nächsten Benutzerumgebung (z.B. PC-Umgebung) durch Referenz 42b, etc. Die Datenbank DB und der Serverblock 33 können für alle diese Umgebungen gemeinsam gewartet werden. Jeder Block kommuniziert mit einem Server über eine Nachrichtenschnittstelle. Wie zuvor erwähnt wurde, kann die Datenbank während des Betriebs die Bildung der Benutzerschnittstelle in jede Umgebung steuern.
  • Auch wenn die Erfindung oben unter Bezugnahme auf die Beispiele der beigefügten Zeichnungen erklärt ist, ist es offensichtlich, dass die Erfindung nicht darauf beschränkt ist, sondern innerhalb der Reichweite der beigefügten Ansprüche modifiziert werden kann. Beispielsweise könnte der Server in manchen Fällen auch die Aufgaben des MML-Kontrollers/der Benutzerschnittstelle übernehmen, doch dann würden manche Vorteile der Erfindung verloren gehen.

Claims (7)

  1. Verfahren zum Bilden einer Benutzerschnittstelle für eine Telekommunikationsvermittlung, wobei das Verfahren umfasst: – Bereitstellen eines Eingabemittels zum Empfangen einer Benutzereingabe von einem Benutzerendgerät (DT), wobei die Benutzereingabe Steuerbefehle umfasst, und mindestens einer der Vielzahl von Steuerbefehlen mit Parametern verknüpft ist; – Versehen der Benutzerschnittstelle mit einer Datenbank (DB), die von der Telekommunikationsvermittlung getrennt ist; – Eingeben in die getrennte Datenbank (DB) von: (a) Regeln über Vollständigkeit und Semantik der Steuerbefehle und über die Arten und erlaubten Wertebereiche der Parameter, und (b) alphanumerischen Daten, um Benutzeranweisungsnachrichten zu bilden; – Versehen der Benutzerschnittstelle mit einem Serverprogrammblock (33), der Programmcode zum Überprüfen der Benutzereingabe auf Einhaltung der Regeln, basierend auf Abfragen in die getrennte Datenbank (DB) umfasst, und in Reaktion auf einen Fehler des Überprüfens Auffordern zu mehr Benutzereingabe; – wobei der Programmcode des Serverprogrammblocks (33) von den Regeln und den alphanumerischen Daten in der getrennten Datenbank (DB) und von den Arten und erlaubten Wertebereichen der Parameter unabhängig ist.
  2. Verfahren nach Anspruch 1, gekennzeichnet durch die weiteren Schritte: – weiter Versehen der Benutzerschnittstelle mit einem Mensch-Maschine-Sprachenkontroller, MML-Kontroller, der sich logisch zwischen dem Benutzerendgerät (DT) und dem Serverprogrammblock (33) befindet, – wobei der MML-Kontroller Benutzeranweisungsnachrichten von dem Serverprogrammblock (33) empfängt, die Benutzeranweisungsnachrichten an das Benutzerendgerät (DT) ausgibt, und Dienstanfragen für den Serverprogrammblock basierend auf der Benutzereingabe erzeugt.
  3. Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch die weiteren Schritte: – Speichern von Ausführungsanweisungen (G), die eine Reaktion auf jeden Steuerbefehl in der Benutzereingabe angeben, in der getrennten Datenbank (DB).
  4. Verfahren nach Anspruch 1, 2 oder 3. gekennzeichnet durch die weiteren Schritte: – Versehen der Telekommunikationsvermittlung mit mindestens einem neuen oder modifizierten Dienst; – Definieren von mindestens einem Steuerbefehl zum Aufrufen des neuen oder modifizierten Dienstes; und – Modifizieren der Benutzerschnittstelle gemäß dem neuen oder modifizierten Dienst, wobei der Schritt des Modifizierens umfasst: – Eingeben von neuen oder modifizierten Regeln und alphanumerischen Daten nur in die getrennte Datenbank (DB), und – Intaktlassen des Programmcodes des Serverprogrammblocks (33).
  5. Benutzerschnittstelle für eine Telekommunikationsvermittlung, wobei die Benutzerschnittstelle umfasst: – Eingabemittel zum Empfangen einer Benutzereingabe von einem Benutzerendgerät (DT), wobei die Benutzereingabe eine Vielzahl von Steuerbefehlen umfasst, wobei mindestens einer der Vielzahl von Steuerbefehlen mit Parametern verknüpft ist; – eine Datenbank (DB), die von der Telekommunikationsvermittlung getrennt ist, wobei die getrennte Datenbank (DB) umfasst: (a) Regeln über Vollständigkeit und Semantik der Steuerbefehle und über die Arten und erlaubten Wertebereiche der Parameter, und (b) alphanumerische Daten, um Benutzeranweisungsnachrichten zu bilden; – einen Serverprogrammblock (33) umfassend Programmcode, wobei der Programmcode (a) unabhängig von den Regeln und den alphanumerischen Daten in der getrennten Datenbank (DB) ist, und (b) angepasst ist, um die Regeln von der getrennten Datenbank (DB) abzurufen, und um die Benutzereingabe auf Einhaltung der Regeln, basierend auf Abfragen in die getrennte Datenbank (DB) zu überprüfen, und um in Reaktion auf einen Fehler in dem Überprüfen die alphanumerischen Daten zum Auffordern zu mehr Benutzereingabe abzurufen.
  6. Benutzerschnittstelle nach Anspruch 5, gekennzeichnet durch: – einen Mensch-Maschine-Sprachkontroller, MML-Kontroller, der sich logisch zwischen dem Benutzerendgerät (DT) und dem Serverprogrammblock (33) befindet, – wobei der MML-Kontroller angepasst ist, um Benutzeranweisungsnachrichten von dem Serverprogrammblock (33) zu empfangen, und um die Benutzeranweisungsnachrichten an das Benutzerendgerät (DT) auszugeben, und um Dienstanfragen an den Serverprogrammblock basierend auf der Benutzereingabe zu erzeugen.
  7. Benutzerschnittstelle nach Anspruch 5, dadurch gekennzeichnet, dass die Benutzerschnittstelle mehrere unterschiedliche MML-Kontroller für unterschiedliche Umgebungen umfasst, und der Serverprogammblock (33) den mehreren unterschiedlichen MML-Kontrollern gemein ist.
DE69634953T 1995-04-13 1996-04-12 Anpassbare anwenderschnittstelle Expired - Fee Related DE69634953T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FI951804A FI100497B (fi) 1995-04-13 1995-04-13 Mukautuva käyttöliittymä
FI951804 1995-04-13
PCT/FI1996/000203 WO1996032792A1 (en) 1995-04-13 1996-04-12 Adaptable user interface

Publications (2)

Publication Number Publication Date
DE69634953D1 DE69634953D1 (de) 2005-08-25
DE69634953T2 true DE69634953T2 (de) 2006-04-20

Family

ID=8543249

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69634953T Expired - Fee Related DE69634953T2 (de) 1995-04-13 1996-04-12 Anpassbare anwenderschnittstelle

Country Status (10)

Country Link
US (1) US6226633B1 (de)
EP (1) EP0827658B1 (de)
CN (1) CN1181854A (de)
AU (1) AU702268B2 (de)
BR (1) BR9604926A (de)
CA (1) CA2217504A1 (de)
DE (1) DE69634953T2 (de)
FI (1) FI100497B (de)
RU (1) RU2155374C2 (de)
WO (1) WO1996032792A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7017116B2 (en) * 1999-01-06 2006-03-21 Iconics, Inc. Graphical human-machine interface on a portable device
GB2361383B (en) * 2000-04-13 2002-10-30 3Com Corp Graphically distinguishing a path between two points on a network
FI110900B (fi) * 2001-07-11 2003-04-15 Nokia Corp Protokollaperusteiset päätevaltuudet
CN100389583C (zh) * 2004-12-24 2008-05-21 北京中星微电子有限公司 一种命令传送方法
US20100281173A1 (en) * 2009-05-01 2010-11-04 Microsoft Corporation Delegated administration for remote management
CN102111484A (zh) * 2009-12-29 2011-06-29 比亚迪股份有限公司 一种移动终端、执行扩展命令的方法及功能扩展模块

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4595980A (en) * 1983-07-27 1986-06-17 International Business Machines Corp. Interactive data processing system having concurrent multi-lingual inputs
EP0207255B1 (de) * 1985-07-05 1991-01-16 Siemens-Albis Aktiengesellschaft Anordnung zum Bedienen und Warten einer Fernmelde- insbesondere Fernsprechvermittlungsanlage
US5278978A (en) * 1990-03-26 1994-01-11 International Business Machines Corporation Method and system for describing and exchanging data between heterogeneous database systems with data converted by the receiving database system
TW226047B (de) * 1990-03-27 1994-07-01 Ibm
US5251125A (en) * 1990-04-30 1993-10-05 Eaton Corporation User interface for a process control device
US5428772A (en) * 1991-10-01 1995-06-27 Prime Computer, Inc. Data processing system providing user interaction in multiple natural languages
US5347564A (en) * 1991-12-20 1994-09-13 The Chesapeake And Potomac Telephone Company Of Maryland Automated translation input system
FI106418B (fi) * 1992-03-10 2001-01-31 Nokia Networks Oy Verkonhallintajärjestelmä
US5491796A (en) * 1992-10-23 1996-02-13 Net Labs, Inc. Apparatus for remotely managing diverse information network resources
US5621875A (en) * 1993-10-26 1997-04-15 Microsoft Corp. Method and system for automatic formatting of user selected text
FI106764B (fi) * 1994-02-14 2001-03-30 Nokia Networks Oy Tietoliikennekeskuksen monikielinen käytönohjausliitäntä
US5802513A (en) * 1996-02-01 1998-09-01 Bellsouth Corporation Method and system for distance determination and use of the distance determination

Also Published As

Publication number Publication date
CA2217504A1 (en) 1996-10-17
AU5337196A (en) 1996-10-30
EP0827658B1 (de) 2005-07-20
US6226633B1 (en) 2001-05-01
RU2155374C2 (ru) 2000-08-27
AU702268B2 (en) 1999-02-18
FI951804A (fi) 1996-10-14
CN1181854A (zh) 1998-05-13
BR9604926A (pt) 1998-06-09
DE69634953D1 (de) 2005-08-25
EP0827658A1 (de) 1998-03-11
FI951804A0 (fi) 1995-04-13
WO1996032792A1 (en) 1996-10-17
FI100497B (fi) 1997-12-15

Similar Documents

Publication Publication Date Title
DE69636157T2 (de) Verfahren und System zum graphischen Anzeigen und zur Navigation durch ein interaktives Sprachantwortmenü
EP0743595B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Software
DE19708281B4 (de) Fernausführungssystem mit Programmempfänger
DE2527631A1 (de) Nachrichtenuebertragungsanlage zur uebertragung von nachrichten zwischen mehreren stationen
DE3823914A1 (de) Verfahren zum uebermitteln endgeraetebestimmender programmparameterdaten von einer kommunikationsanlage zu kommunikationsendgeraeten
DE4306031A1 (de) Verfahren zum ferngesteuerten Administrieren von Kommunikationssystemen
DE10392438T5 (de) Vorrichtung und Verfahren zur zentralen Überwachung und Steuerung von Anlagen
EP0207255A1 (de) Anordnung zum Bedienen und Warten einer Fernmelde- insbesondere Fernsprechvermittlungsanlage
DE69332927T2 (de) Gerät zur Verwaltung eines Elementverwalters für ein Fernmeldevermittlungssystem
DE69634953T2 (de) Anpassbare anwenderschnittstelle
DE60114949T2 (de) Leitweglenkung
EP0977416B1 (de) Verfahren, Endgerät, Knoten, Programmodul und Bedienoberfläche zur Ermittlung von für eine Kommunikationsbeziehung erforderlichen Merkmalen
EP1005216B1 (de) Verfahren und Vorrichtung zur Validierung von Konfigurationsdaten für Telekommunikationssysteme
EP0838054B1 (de) Verfahren und steuereinrichtung für eine graphische steuerung von abläufen in einem netzwerkmanagementsystem
EP0303869B1 (de) Modular strukturiertes digitales Kommunikationssystem mit betriebstechnischen Kommunikationsmitteln
EP1547309B1 (de) Verfahren zur aktualisierung des lokalen managementsystems in mindestens einem netzelement eines telekommunikationsnetzwerkes
DE69333086T2 (de) Zentralisiertes steuersystem für ein fernmeldenetz
DE10125956A1 (de) Archivierung in Arbeitsablaufverwaltungssystemen
EP1187009A2 (de) Verfahren zum Erzeugen von Informationsmodellen
DE10129886A1 (de) Verfahren zum Netzkonfigurationsmanagement und Netzbestandsmanagement eines Netzes und entsprechendes Netzkonfigurationsmanagement- und Netzbestandsmanagementsystem
DE3016510A1 (de) Hilfsgeraet zur steuerprogrammentwicklung fuer komplexe anlagen, insbesondere fuer ein fernsprech-vermittlungssystem
DE4427913C2 (de) Verfahren zum Versenden eines Datensatzes in einem Terminalnetz
DE19508940B4 (de) Verfahren zum Betrieb eines computergesteuerten Kommunikationssystems
EP1035738A1 (de) Verfahren und Netzelement zum Betreiben eines Telekommunikationsnetzes
EP0684574A2 (de) Verfahren und Service-Personalcomputer zum Administrieren und Warten von Kommunikationssystemen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee