DE69429530T2 - Fernmeldevermittlung mit programmierbaren netzprotokollen und fernmeldediensten - Google Patents
Fernmeldevermittlung mit programmierbaren netzprotokollen und fernmeldedienstenInfo
- Publication number
- DE69429530T2 DE69429530T2 DE69429530T DE69429530T DE69429530T2 DE 69429530 T2 DE69429530 T2 DE 69429530T2 DE 69429530 T DE69429530 T DE 69429530T DE 69429530 T DE69429530 T DE 69429530T DE 69429530 T2 DE69429530 T2 DE 69429530T2
- Authority
- DE
- Germany
- Prior art keywords
- event
- state
- functions
- protocols
- application
- 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 - Lifetime
Links
- 238000012545 processing Methods 0.000 claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000004891 communication Methods 0.000 claims abstract description 14
- 230000004044 response Effects 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 110
- 230000007704 transition Effects 0.000 claims 4
- 238000001514 detection method Methods 0.000 claims 1
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 4
- 230000011664 signaling Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 15
- 239000011159 matrix material Substances 0.000 description 9
- 238000011161 development Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 101100345332 Schizosaccharomyces pombe (strain 972 / ATCC 24843) mfr1 gene Proteins 0.000 description 2
- 101100023124 Schizosaccharomyces pombe (strain 972 / ATCC 24843) mfr2 gene Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- NHDHVHZZCFYRSB-UHFFFAOYSA-N pyriproxyfen Chemical compound C=1C=CC=NC=1OC(C)COC(C=C1)=CC=C1OC1=CC=CC=C1 NHDHVHZZCFYRSB-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54575—Software application
- H04Q3/54583—Software development, e.g. procedural, object oriented, software generation, software testing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/03—Protocol definition or specification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13034—A/D conversion, code compression/expansion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1305—Software aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13056—Routines, finite state machines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13072—Sequence circuits for call signaling, ACD systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1308—Power supply
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1309—Apparatus individually associated with a subscriber line, line circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13093—Personal computer, PC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13096—Digital apparatus individually associated with a subscriber line, digital line circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13097—Numbering, addressing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13098—Mobile subscriber
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13103—Memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13104—Central control, computer control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13106—Microprocessor, CPU
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13107—Control equipment for a part of the connection, distributed control, co-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13176—Common channel signaling, CCS7
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13179—Fax, still picture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13204—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1324—Conference call
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1325—Priority service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13292—Time division multiplexing, TDM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13299—Bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13377—Recorded announcement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13378—Speech recognition, speech analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13396—Signaling in general, in-band signalling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13405—Dual frequency signaling, DTMF
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Exchange Systems With Centralized Control (AREA)
- Computer And Data Communications (AREA)
- Circuits Of Receivers In General (AREA)
- Telephonic Communication Services (AREA)
Description
- Die vorliegende Erfindung betrifft allgemein das Gebiet von Telekommunikationen und insbesondere programmierbare Telekommunikationsvermittlungsstellen und eine Steuerung von externen Computern, die verschiedene Telekommunikationsanwendungen unterstützen.
- Programmierbare Telekommunikations-Vermittlungsstellen werden in einer großen Vielfalt von Anwendungen wie Sprachnachrichtenübermittlungs-, Televermarktungs-Diensten und dergleichen verwendet. Eine programmierbare Vermittlungsstelle wird gewöhnlicherweise von einer Host-Einrichtung gesteuert, die typischerweise ein Computer ist, auf dem ein Telekommunikationsanwendungsprogramm läuft. Ein Kunde kann entweder ein kommerziell verfügbares Anwendungsprogramm, welches mit der Host- und Vermittlungsstellen-Hardware kompatibel ist, erwerben oder kann ein Schreiben eines Kundenprogramms wählen.
- In den meisten Anwendungen ist eine programmierbare Vermittlungsstelle mit einem öffentlichen Telefonnetz über eine oder mehrere analoge Fernmeldelinien oder digitale Überbrückungen (z. B. eine T1 Überbrückung) verbunden, die an der Vermittlungsstelle abgeschlossen sind. Die Vermittlungsstelle kann auch eine oder mehrere "Leitungen" abschließen, die mit Einrichtungen wie Telefongeräten verbunden sind. Eine Kommunikation über irgendeine gegebene Fernmeldelinie, Überbrückung oder Leitung wird in Übereinstimmung mit einem zugewiesenen Signalisierungsprotokoll ausgeführt.
- Überall in der Welt sind zahlreiche "Standard-"Signalisierungsprotokolle in Verwendung. Einige Protokolle, die in einem weit verbreiteten Maße gegenwärtig verwendet werden, sind E&M Wink-Start (E&M wink start), Schleifenstart (Loopstart), Grundstart (Groundstart) und ein internationales R2 Zwangslaufverfahren (compelled R2) unter Verwendung einer DTMF/MFR1 oder MFR2 Adressensignalisierung.
- In herkömmlichen programmierbaren Vermittlungsstellen wird die Wahl, welches Signalisierungsprotokoll in bezug auf eine bestimmte Fernmeldelinie, Überbrückung oder Leitung verwendet wird, allgemein durchgeführt, bevor das Gerät an den Kunden geliefert wird. Das heißt, der Vermittlungsstellenhersteller konfiguriert die Vermittlungsstelle, was Aspekte der Hardware oder Firmware oder beide beinhalten kann, gewöhnlicherweise in einer Vorgehensweise, die nicht leicht oder schnell geändert werden kann (d. h. durch eine in einem PROM gespeicherte Firmware). Die Konfiguration des Herstellers weist effektiv ein bestimmtes Signalisierungsprotokoll für jede Fernmeldelinie, Überbrückung oder Leitung zu.
- Es ergeben sich jedoch mit einer derartigen herkömmlichen Konfiguration mehrere Probleme. Zunächst existiert der Mangel einer Flexibilität für einen Benutzer zum Konfigurieren der Vermittlungsstelle wie für eine bestimmte Anwendung gewünscht. Dies ist insbesondere problematisch, wenn sich eine Notwendigkeit ergibt, die spezifizierten Signalisierungsprotokolle nach einer anfänglichen Installation der Vermittlungsstelle, sogar selten, kundenspezifisch anzupassen.
- Ein anderes Problem mit herkömmlichen programmierbaren Vermittlungsstellen betrifft deren Unfähigkeit, das für eine bestimmte Fernmeldelinie, Überbrückung oder Leitung spezialisierte Signalisierungsprotokoll dynamisch zu ändern. Dieses Problem kann mit einer gewissen Häufigkeit in Europa auftreten, wo verschiedene R2 Zwangssignalisierungsprotokolle in verschiedenen Ländern oder in irgendeinem Land verwendet werden, wo international eingeleitete Anrufe durch eine Tandern- Vermittlungsanordnung erzeugt werden. Das unerwünschte Ergebnis besteht darin, dass die Vermittlungsstelle wahrscheinlich nicht in der Lage ist, den ankommenden Anruf in eine geeigneten Weise zu behandeln.
- Ein anderer Hauptnachteil von herkömmlichen programmierbaren Vermittlungsstellen besteht darin, dass sie keine Möglichkeit für den Benutzer anbieten, leicht kundenspezifische Signalisierungsprotokolle für Anwendungen zu entwickeln und zu implementieren. Kundenspezifische Protokolle können wünschenswert, wenn nicht erforderlich, in Anwendungen sein, bei denen die Vermittlungsstelle zwischen das öffentliche Telefonnetz und andere Einrichtungen (z. B. ein Sprachnachrichtenweitergabesystem) geschaltet ist. Weil derartige Einrichtungen spezialisierte Funktionen ausführen können und nicht dafür vorgesehen sind, um direkt mit dem öffentlichen Telefonnetz verbunden zu sein, sind sie typischerweise für Standardsignalisierungsprotokolle nicht ausgelegt. Somit besteht eine Notwendigkeit, dass der Benutzer in die Lage ist, die programmierbare Vermittlungsstelle in einer derartigen Weise zu steuern, dass eine geeignete Kommunikation sowohl mit dem öffentlichen Telefonnetz als auch mit anderen Einrichtungen, die mit der Vermittlungsstelle verbunden sind, aufrechterhalten wird.
- Noch ein anderer Nachteil in herkömmlichen programmierbaren Vermittlungsstellen besteht darin, dass sie eine übermäßig häufige Intervention von der Host-Einrichtung erfordern, um Anrufe zu verarbeiten. Zum Beispiel wird eine Host-Intervention (d. h. ein Austausch von Nachrichten zwischen der Vermittlungsstelle und der Host-Einrichtung) typischerweise benötigt, um Zahlzeichen entweder zu senden oder zu empfangen. Dies ist erforderlich, weil die Host-Einrichtung die Vermittlungsstelle anweisen muss, geeignete verfügbare Ressourcen für die anstehende Aufgabe anzuwenden. In diesem Beispiel könnte der Host die Vermittlungsstelle anweisen, einen verfügbaren Tongenerator mit einem bestimmten Kanal zum Senden von Zahlzeichen zu verbinden oder einen Tonempfänger zum Empfangen von Zahlzeichen (Digits) zu verbinden. Im Hinblick auf eine Anwendung, bei der Hunderte bis möglicherweise Zehntausende von Anrufen pro Stunde von einer Vermittlungsstelle verarbeitet werden, wird die Anzahl von Nachrichten, die zwischen dem Host und der Vermittlungsstelle übergeben werden müssen, relativ groß, was oft zu einem reduzierten Host- und Vermittlungsstellen-Betriebsverhalten führt.
- Die EP 0 555 997 offenbart eine Vorrichtung und ein Verfahren zum Kommunizieren unter Verwendung von Protokollen in einem verteilten Kommunikationssystem. Jedoch sind derartige Kommunikationseinrichtungen nicht Telekommunikationsvermittlungsstellen und sie führen keine Anrufverarbeitungsfunktionen einschließlich der Verbindung oder Trennung von Kommunikationspfaden zwischen verschiedenen Kanälen einer Vielzahl von Kanälen aus. Ferner führen die Kommunikationsprotokolle zwischen den zwei Einrichtungen weder eine Definition noch eine Steuerung der internen Betriebsvorgänge einer Telekommunikationsvermittlungsstelle aus, um ein Kommunikationssignalisierungsprotokoll für jeden der Kanäle einer Telekommunikationsvermittlungsstelle zum Ausführen von Anrufverarbeitungsfunktionen zu bestimmen.
- Kurz zusammengefasst stellt die vorliegende Erfindung ein programmierbares Telekommunikationssystem wie im Anspruch 10 definiert bereit, welches einen Benutzer mit der Fähigkeit zum Definieren und Zuweisen eines gewünschten Signalisierungsprotokolls auf einer Port-für-Port-Basis, entweder der Art nach "standardmäßig" oder kundenspezifisch, versieht, um entweder ankommende oder abgehende Anrufe zu behandeln. Mehrere Signalisierungsprotokolle können gleichzeitig in der Vermittlungsstelle resident sein und die Protokollzuweisung eines gegebenen Ports kann in Echtzeit dynamisch geändert werden.
- Die Erfindung stellt ein Protokollentwicklungsverfahren wie im Anspruch 1 definiert bereit, welches dem Benutzer erlaubt, eine getrennte Finitzustandsmaschine für jeden Port, der von der Vermittlungsstelle bereitgestellt wird, zu definieren. Jede Finitzustandsmaschine kann unabhängig definiert werden, indem eine Reihe von elementaren Verarbeitungsschritten, die als atomare Funktionen bezeichnet werden, in Primitive kombiniert werden, die wiederum mit Zuständen und Ereignissen kombiniert werden, um die gewünschte Zustandsmaschine zu definieren. Derartige Zustandsmaschinen können Wartezustände umfassen, die vorzugsweise verwendet werden, um die Beteiligung der Host-Einrichtung bei der Verarbeitung von Anrufen zu verringern. Wartezustände können programmierbare zeitgesteuerte Perioden darstellen, die eine Gelegenheit für das Auftreten von erwarteten Aktionen oder Ereignissen bereitstellt, bevor die Vermittlungsstelle die nächste Operation ausführt.
- Zusätzlich kann die vorliegende Erfindung als ein Entwicklungsverfahren und eine Vorrichtung für Telekommunikationsanwendungen, wie in den Ansprüchen 8 bzw. 10 beansprucht, dienen. Beispiele von derartigen Telekommunikationsanwendungen sind unter anderem Personallcommunikationsdienste (Personal Communication Services, PCS), ein 800/900 Dienst, eine Sprachpost, eine Televermarktung. Die vorliegende Erfindung kann auch zum Steuern oder Verwalten einer großen Vielzahl von Kommunikationsdiensten innerhalb einer programmierbaren Vermittlungsstelle, einschließlich einer Konferenzschaltung, von mittels Sprache aufgezeichneten Ansagen, einer Tonerzeugung, eines Tonempfangs, einer Anruffortschrittsanalyse, einer Spracherkennung, einer Sprachkompression und einer Fax-Codierung/Decodierung, verwendet werden. Bevorzugte Merkmale der Erfindung sind in den abhängigen Ansprüchen 2 bis 7, 9 und 11 aufgeführt.
- Diese Erfindung wird insbesondere in den beigefügten Ansprüchen aufgeführt. Die obigen und weitere Vorteile dieser Erfindung lassen sich besser durch Bezugnahme auf die folgende Beschreibung im Zusammenhang mit den beiliegenden Zeichnungen verstehen. In den Zeichnungen zeigen:
- Fig. 1 ein Blockdiagramm einer programmierbaren Telekommunikationsvermittlungsstelle, die von einem Benutzer in Übereinstimmung mit einer bevorzugten Ausführungsform der vorliegenden Erfindung programmiert worden ist;
- Fig. 2 ein Diagramm, das die Schichten der Software darstellt, die zum Steuern der Vermittlungsstelle der Fig. 1 verwendet wird.
- Fig. 3A und 3B einige spezifische Merkmale und Funktionen im Zusammenhang mit jeder der Softwareschichten 2-5, die in Fig. 2 dargestellt sind;
- Fig. 4 ein Blockdiagramm einer Finitzustandsmaschinen-Entwicklungsumgebung, die in Übereinstimmung mit einer bevorzugten Ausführungsform der vorliegenden Erfindung konstruiert ist;
- Fig. 5 ein Blockdiagramm einer Schicht 3 (Netzschicht) Anwendung, bei der Finitzustandsmaschinen verwendet werden, um gewünschte Netzsignalisierungsprotokolle verschiedenen Ports einer programmierbaren Vermittlungsstelle zuzuweisen.
- Fig. 6A ein Zustandsdiagramm einer Finitzustandsmaschine zum Bereitstellen einer Tonsteuerung in einer Anwendung der Verbindungsschicht 2 (Link Layer);
- Fig. 6B ein Diagramm der Finitzustandsmaschine der Fig. 6A, bei der jede Serie von atomaren Funktionen als ein Primitive definiert ist;
- Fig. 6C eine Gruppe von Tabellen, die die Entsprechung zwischen den atomaren Funktionen, Primitiven und Zuständen der Fig. 6B zeigt;
- Fig. 7A ein Zustandsdiagramm einer Finitzustandsmaschine zum Verarbeiten der anfänglichen Phase eines Anrufautbaus unter Verwendung einer internationalen R2 Zwangssignalisierung (compelled R2 signalling) bei einer Anwendung der Schicht 3 (Netzschicht);
- Fig. 7B ein Diagramm der Finitzustandsmaschine der Fig. 7A, bei der eine Reihe von atomaren Funktionen als ein Primitive definiert ist;
- Fig. 7C eine Gruppe von Tabellen, die die Entsprechung zwischen den atomaren Funktionen, Primitiven und Zuständen der Fig. 7B zeigen;
- Fig. 8A ein Zustandsdiagramm einer Finitzustandsmaschine zum Verarbeiten der anfänglichen Phase eines Anrufaufbaus unter Verwendung einer T1 E&M Wink-Start-Signalisierung in einer Schicht 3 (Netzschicht) Anwendung.
- Fig. 8B ein Diagramm der Finitzustandsmaschine der Fig. 8A, bei der jede Serie von atomaren Funktionen als ein Primitive definiert ist;
- Fig. 8C eine Gruppe von Tabellen, die die Entsprechung zwischen den atomaren Funktionen, Primitiven und Zuständen der Fig. 8B zeigen;
- Fig. 9A ein Zustandsdiagramm einer Finitzustandsmaschine zum Bereitstellen einer interaktiven Sprachantwort auf einen ankommenden Anruf in einer Schicht 4 (Anrufverwaltungsschicht) Anwendung.
- Fig. 9B ein Diagramm der Finitzustandsmaschine der Fig. 9A, bei der jede Serie von atomaren Funktionen als ein Primitive definiert wird;
- Fig. 9C eine Gruppe von Tabellen, die die Entsprechung zwischen den atomaren Funktionen, Primitiven und Zuständen der Fig. 9B zeigen;
- Fig. 10A ein Zustandsdiagramm einer Finitzustandsmaschine für eine Schicht 5 einwärts gerichtete Anwendung (layer 5 inbound application) wie ein gebührenfreier (800) Dienst;
- Fig. 10B ein Diagramm der Finitzustandsmaschine der Fig. 10A, bei der jede Serie von atomaren Funktionen als ein Primitive definiert ist;
- Fig. 10C eine Gruppe von Tabellen, die die Entsprechung zwischen den atomaren Funktionen, Primitiven und Zuständen der Fig. 10B zeigen.
- Fig. 1 zeigt einen kommerziell verfügbaren Personalcomputer (PC) 2, der eine PC Zentralverarbeitungseinheit (CPU) 4 und ein Festplattenlaufwerk 6, die über einen PC Eingangs/Ausgangs- I/O-Bus 8 und einen PC Leistungsbus 9 untereinander verbunden sind, umfasst. Der PC 2 ist vorzugsweise ein PC-AT®, der von International Business Machines verkauft wird, oder ein dazu kompatibler. Andere Personalcomputer, die mehr Speicher oder leistungsfähigere CPUs als der PC-AT® aufweisen, können ebenfalls verwendet werden. Der PC 2 arbeitet vorzugsweise unter einem anwendungsorientierten Betriebssystem wie DOS® oder UNIX®.
- Der PC 2 besteht aus einem Chassis oder Gehäuse, in dem eine Hauptplatine angebracht ist, zusammen mit dem Plattenlaufwerk 6 und anderen optionalen Aufbauten wie Floppy Disk-Laufwerke, Modems und dergleichen. Die PC CPU 4 ist auf der Hauptplatine angebracht, die eine Reihe von Kantenverbindern umfasst, in die andere Platinen (Karten) eingefügt werden können und dadurch mit dem PC I/O und Leistungsbussen 8 und 9 verbunden werden können.
- Eine programmierbare Telekommunikationsvermittlungsstelle 10 befindet sich innerhalb des PC 2. Die CPU/Matrixkarte 12 ist in einen der Schlitze auf der Hauptplatine eingefügt und somit mit den Bussen 8 und 9 verbunden. Die CPU/Matrixkarte 12 ist verbunden mit einer digitalen (E1) Leitungskarte 14, einer digitalen (T1) Leitungskarte 15, einer digitalen Signalverarbeitungs-(DSP)-Karte 16, einer Paket- Arbeitsmaschinenkarte 17, einer analogen (universellen) Leitungskarte 18 und einer Terminator-Karte 19 über vier Busse: einen HDLC oder Zwischenprozessorbus 20; einen TDM Bus 22; einen Leitungskarten- (LC)-Status/Steuerbus 24; und einen Zeitgaben/Steuerbus 26. Ein Batterie/Klingelspannungsbus 28 liefert eine Batteriespannung (48VDC) und eine Klingelspannung (109VAC) an die analoge Leitungskarte 18. Die Tertninator-Karte 19 dient zum physikalischen Abschließen von Bussen 20, 22, 24, 26 und 28.
- Die Leitungskarten 14, 15 und 18 und die DSP Karte 16 sind alle mit dem PC Leistungsbus 9 verbunden und empfangen ihre grundlegende Betriebsleistung davon. Obwohl nur eine digitale (T1) Leitungskarte 14, eine digitale (E1) Leitungskarte 15 und eine analoge Leitungskarte 18 dargestellt sind, sei darauf hingewiesen, dass zusätzliche Leitungskarten von irgendeinem Typ abhängig von zwei physikalischen Begrenzungen hinzugefügt werden können: (1) der maximalen Vermittlungskapazität der CPU/Matrixkarte 12, und (2) dem physikalischen Platz innerhalb des Chassis des PC 2.
- Ein externer Host 30, der einen getrennten Personalcomputer, eine Workstation oder einen anderen Computer umfassen kann, kann optional über einen Kommunikationskanal 32 mit der CPU/Matrixkarte 12 verbunden werden. Die CPU/Matrixkarte 12 umfasst vorzugsweise eine herkömmliche RS-232 kompatible Schnittstelle zum Verbinden des Kanals 32. Der externe Host 30 arbeitet vorzugsweise unter einem anwendungsorientierten Betriebssystem.
- Wenn gewünscht, kann die Vermittlungsstelle 10 auf einer passiven Stützebene (eine PC CPU 4 oder eine Platte 6 sind nicht vorhanden) residieren, von der sie elektrische Leistung empfängt und durch den externen Host 30 gesteuert werden kann.
- Eine Externbatterie/Klingelspannungsversorgung 31 ist über einen Pfad 33 mit der Terminator- Karte 19 verbunden. Die Versorgung 31 kann zum Beispiel eine kommerziell erhältliche Stromversorgung umfassen.
- Es wird angenommen, dass Einzelheiten bezüglich der Konstruktion der in Fig. 1 gezeigten verschiedenen Karten in dem technischen Gebiet altbekannt sind. Eine digitale (E1) Leitungskarte 15 ist vorzugsweise unter Verwendung von ähnlicher Hardware wie diejenige konstruiert, die für eine T1 Leitungskarte 14 offenbart ist, mit Ausnahme von Unterschieden in der herkömmlichen Schaltungsanordnung, die einer Leitungskarte 15 ermöglicht, E1 Überbrückungen im Gegensatz zu T1 Überbrückungen abzuschließen.
- Fig. 2 ist ein Schichtmodell der Software, die zum Steuern der programmierbaren Verinittlungsstelle 10 der Fig. 1 verwendet wird. Die linke Spalte in Fig. 2 zeigt sieben Schichten, die in dem Open Systems Interconnection (OSI) Referenzmodell definiert sind. Die rechte Spalte der Fig. 2 zeigt fünf Schichten, die zum Steuern der Vermittlungsstelle 10 verwendet werden, und deren allgemeine Entsprechung zu dem OSI Modell.
- Bezugnehmend nun auf beide Fig. 1 und 2 stellt die Anwendungsschicht 5, die allgemein der Anwendungsschicht des OSI Modells entspricht, eine Anwendungssoftware dar, die typischerweise entweder auf der PC CPU 4 oder dem externen Host 30 läuft. Die Software der Anwendungsschicht 5 kann verwendet werden, um irgendeinen einer Anzahl von gewünschten Telekommunikationsdiensten zu implementieren, beispielsweise einen gebührenfreien (800) Dienst, eine Sprachpost, eine automatische Anrufverteilung (ACD), um nur einige wenige zu erwähnen.
- Die Anrufverwaltungsschicht 4, die allgemein den Präsentations- (Presentation), Session (Session) und Transport-Schichten des OSI Modells entspricht, stellt Software dar, die auf der CPU/Matrixkarte 12 läuft. Die Anrufverwaltungsschicht 4 ist zum Ausführen von zentralisierten Anrufverarbeitungsfunktionen und zum Bereitstellen einer gemeinsamen Schnittstelle an der Anwendungsschicht 5 unabhängig von dem Typ oder von den Typen von Netzsignalisierungsprotokollen, die innerhalb der Vermittlungsstelle 10 verwendet werden können, verantwortlich. Typischerweise führt die Anrufverwaltungsschicht 4 Funktionen aus, die nach dem Anrufaufbau benötigt werden.
- Die Netzsignalisierungs-Protokollschicht 3 entspricht allgemein der Netzschicht des OSI Modells. Die Software, die von der Netzsignalisierungs-Protokollschicht 3 dargestellt wird, läuft entweder auf der CPU/Matrixkarte 12 oder auf Leitungskarten, die ihre eigenen Mikroprozessoren umfassen, wie Leitungskarten 14 oder 15 umfassen, oder einer Paket-Arbeitsmaschinenkarte 17, und ist für die Netzsignalisierungsüberwachung innerhalb und außerhalb eines Bands sowie einer Netzprotokollebenensteuerung von ankommenden und abgehenden Anrufen verantwortlich.
- Die Verbindungsschicht 2 entspricht allgemein der Datenverbindungsschicht des OSI Modells. Die Software der Verbindungsschicht 2 (Link Layer 2) läuft auf der CPU/Matrixkarte 12, den Leitungskarten, die ihre eigenen Mikroprozessoren umfassen, der DSP Karte 16 oder der Paket-Arbeitsmaschinenkarte 17 (die jeweils ihren eigenen Mikroprozessor umfassen) und ist für die Erfassung sowie einen physikalischen Transfer der Netzsignalisierungsinformation über eine Netz- oder Leitungsschnittstelle verantwortlich. Schließlich entspricht die physikalische Schicht 1 der physikalischen Schicht des OSI Modells.
- Leitungskarten 14, 15 und 18 stellen physikalische T1, E1 bzw. analoge elektrische Schnittstellen an der Vermittlungsstelle 10 bereit.
- Die Fig. 3A und 3B sind eine tabellenförmige Auflistung von repräsentativen Merkmalen und Funktionen, die von jeder der Softwareschichten 2-5 der Fig. 2 bereitgestellt werden. Die vorliegende Erfindung kann als ein Entwicklungswerkzeug zum Entwickeln von geeigneter Software zum Implementieren von irgendwelchen der Merkmale und Funktionen, die in den Fig. 3A und 3B gezeigt sind, verwendet werden. Ein illustratives Beispiel der Verwendung der vorliegenden Erfindung im Kontext jeder der Schichten 2-5 wird nachstehend im Zusammenhang mit den Fig. 6A-10A beschrieben.
- Fig. 4 ist ein Gesamtblockschaltbild einer Finitzustandsmaschinen-Entwicklungsumgebung, die in Übereinstimmung mit einer bevorzugten Ausführungsfonn der vorliegenden Erfindung konstruiert ist und die einem Kunden oder einem Benutzer ermöglicht, Finitzustandsmaschinen (Maschinen mit finiten Zuständen) zum Ausführen von gewünschten Telekommunikationsfunktionen zu schaffen und zu definieren. Vor einer ausführlichen Betrachtung dieser Figur sollten die Definitionen von bestimmten Ausdrücken angesprochen werden.
- Wie hier verwendet bezieht sich der Ausdruck Zustand auf eine Zahl, die den gegenwärtigen "Kontext" für einen bestimmten Kanal oder Port darstellt. In einer bevorzugten Ausführungsform der vorliegenden Erfindung werden drei Typen von Zuständen definiert: normal, intern und abblockend. Normale Zustände können Warte-Zustände (d. h. ein SEIZE ACK (Belegungs-Bestätigung) Zustand, eine Bedingung, bei der eine weitere Aktion bis zum Auftreten eines bestimmten Ereignisses unterbrochen wird) oder stabile Zustände (d. h. eine Konversation geht gerade vor sich) sein. Interne Zustände werden verwendet, um Bedingungen zu testen und als Entscheidungsverzweigungen effektiv zu arbeiten. Normale und interne Zustände können von einem Kunden oder Benutzer, in Übereinstimmung mit der vorliegenden Erfindung, spezifiziert werden, um eine Finitzustandsmaschine zum Ausführen einer gewünschten Definition zu definieren. Abblockungs-Zustände werden von der vorliegenden Erfindung automatisch erzeugt und auf eine Kanal-für-Kanal-Basis im Zusammenhang mit der Verwaltung von Off-Board- Ressourcen verwendet.
- Ein Ereignis ist eine Zahl, die eine Bedingung definiert, die von einem bestimmten Zustand akzeptiert wird. Daten können einem Ereignis zugeordnet werden.
- Eine atomare Funktion ist eine, die eine elementare Aufgabe wie das Setzen eines Zeitnehmers ausführt. Benutzerspezifizierte Daten können einer atomaren Funktion zugeordnet werden. Ein Primitive ist eine vorgegebene Sequenz von atomaren Funktionen, die auf das Auftreten eines bestimmten Ereignisses aufgerufen wird. Benutzer können Primitive aus einer Bibliothek von verfügbaren atomaren Funktionen erzeugen oder definieren. In einer bevorzugten Ausführungsform kann jedes Primitiv bis zu 20 atomaren Funktionen enthalten.
- Eine Zustand/Ereignis-Tabelle definiert die gültigen Ereignisse für einen bestimmten Zustand und das Primitive, das auf das Auftreten jedes derartigen Ereignisses aufgerufen wird. In einer bevorzugten Ausführungsform kann eine Zustand/Ereignis-Tabelle bis zu 100 Zustände und bis zu 40 Ereignisse pro Zustand enthalten.
- Eine Primitive-Tabelle definiert die Primitive, die von einer Zustands/Ereignis-Tabelle verwendet werden. In einer bevorzugten Ausführungsform kann eine Primitive-Tabelle bis zu 200 Primitive enthalten.
- Ein Protokoll wird als die Zuordnung einer Zustands/Ereignis-Tabelle mit einer Primitive-Tabelle definiert und wird von einer Protokoll-ID (einer Zahl) definiert.
- Ein Datenblock wie diejenigen, die mit dem Bezugszeichen 40a, 40n bezeichnet sind, ist für jeden Kanal (Port) 0...n der Vermittlungsstelle zugewiesen. Jeder Datenblock 40a, 40n enthält die folgende Information, die sich auf ihren entsprechenden Kanal bezieht: den gegenwärtigen Zustand des Kanals; einen Zeiger auf eine aktive Zustands/Ereignis-Tabelle; einen Zeiger auf eine aktive Primitive-Tabelle; einen Zeiger auf eine zugewiesene Zustands/Ereignis-Tabelle; und einen Zeiger auf eine zugewiesene Primitive- Tabelle.
- Für den Fall eines Kanals 0 zeigen die Zeiger der aktiven Zustands/Ereignis-Tabelle und der aktiven Primitive-Tabelle, wie mit den schematischen Linien angezeigt, auf Tabellen, die einem residenten Protokoll 0, welches mit einem Bezugszeichen 42a bezeichnet ist, zugeordnet sind. Die Zeiger für die zugewiesene Zustands/Ereignis-Tabelle und zugewiesene Primitive-Tabelle zeigen auf Tabellen, die einem dynamisch geladenen Kunden-definierten Protokoll n+1, welches mit einem Bezugszeichen 44a bezeichnet ist, zugeordnet sind.
- Andere Protokolle, die zur Verwendung vorhanden und verfügbar sind, sind residente Protokolle 1...n (42b, 42c) und heruntergeladene Kunden-definierte Protokolle n+2...m (44b, 44c). Die residenten Protokolle 42a-42c stellen vorprogrammierte oder "standardmäßige" Protokolle dar, die von einem Hersteller mit einer Vennittlungsstelle typischerweise bereitgestellt werden. Im Gegensatz dazu werden die Kunden-definierten Protokolle 44a-44c von einem Kunden oder Benutzer geschaffen und können der Art nach vollständig "kundenspezifisch" oder "besitzorientiert" sein.
- Eine schichtabhängige Atomarfunktionsbibliothek 46 ist verbunden, um Information an einer Zustandsmaschinen-Arbeitsmaschine 48 bereitzustellen. Die Zustandsmaschinen-Arbeitsmaschine 48 ist auch verbunden, um den Zeiger der aktiven Zustands/Ereignis-Tabelle und den Zeiger der aktiven Primitive-Tabelle von jedem der Datenblöcke 40a-40n zu empfangen.
- Ferner, wie mit dem Bezugszeichen 50 bezeichnet, werden Einrichtungen für eine schichtabhängige Umgebungsunterstützung bereitgestellt.
- Die Funktion der Zustandsmaschinen-Arbeitsmaschine 48 besteht darin, jeden Kanal in Übereinstimmung mit seinem zugewiesenen Protokoll anzusteuern, welches von der zugewiesenen Zustands/Ereignis-Tabelle und der zugewiesenen Primitive-Tabelle definiert wird. Auf das Auftreten eines gültigen Ereignisses für einen normalen Zustand hin wird ein Primitive in Übereinstimmung mit den Einträgen in der zugewiesenen Zustands/Ereignis-Tabelle aufgerufen. Die Zustandsmaschinen- Arbeitsmaschine 48 verwendet die Atomarfunktionsbibliothek 46, um die atomaren Funktionen, die von dem aufgerufenen Primitive dargestellt werden, auszuführen.
- Die Zustandsmaschinen-Arbeitsmaschine 48 wird durch irgendwelche benötigten internen Zustände gehen, wobei automatisch geeignete Abblockungszustände erzeugt werden, bis der Kanal wiederum einen normalen Zustand erreicht. Zu dieser Zeit ist die Verarbeitung durch die Zustandsmaschinen-Arbeitsmaschine 48 bis zum Auftreten eines anderen gültigen Ereignisses abgeschlossen.
- Jedem Kanal wird zu Anfang eines der Kunden-definierten Protokolle oder eines der vorprogrammierten Protokolle zugewiesen. Dies wird durch die Übertragung einer Nachricht von der Anwendungsschicht S an die Anrufverwaltungsschicht 4 erreicht, die wiederum eine geeignete Nachricht an die Schicht 3 übergibt. Der Zeiger der zugewiesenen Zustands/Ereignis-Tabelle und der Zeiger der zugewiesenen Primitive-Tabelle zeigen auf das Protokoll, welches zuletzt zugewiesen wurde. Somit kann ein Kunde ein gewünschtes der verfügbaren Protokolle durch einfaches Spezifizieren der Protokoll-ID zuweisen. In dieser Weise ermöglicht die vorliegende Erfindung in vorteilhafter Weise dem Kunden auf einer Kanal-für-Kanal-Basis ein gewünschtes Protokoll von mehreren Protokollen, die innerhalb einer einzelnen Vermittlungsstelle resident sind, zuzuweisen.
- Alternativ oder wenn der Kunde wählt, Protokolle einigen oder sämtlichen der Kanäle nicht zuzuweisen, werden vorzugsweise Voreinstellungswerte bereitgestellt, so dass jeder Kanal immer ein gültiges Protokoll (z. B. eines der residenten Protokolle 42a-42c), das ihm zugewiesen ist, aufweist.
- Die Zeiger der aktiven Zustands/Ereignis-Tabelle und der aktiven Primitiven-Tabelle, die an der Zustandsmaschinen-Arbeitsmaschine 48 bereitgestellt werden, zeigen auf das Protokoll (aktiv), welches gegenwärtig gerade den Kanal steuert.
- Das von einem bestimmten Kanal verwendete aktive Protokoll ist nicht notwendigerweise permanent und kann im Ansprechen auf das Auftreten eines spezifschen Ereignisses, wie mit näheren Einzelheiten im Zusammenhang mit Fig. 5 beschrieben, dynamisch geändert werden. Weil die atomaren Funktionen, die von der Bibliothek 46 bereitgestellt werden, elementare Funktionen darstellen, sind Kunden oder Benutzer ferner in vorteilhafter Weise in die Lage, gewünschte Änderungen in Protokollen ohne wesentliche oder möglicherweise jegliche Änderungen an dem darunter liegenden Code zu implementieren. Zusätzlich sind die Umgebungsunterstützungs-Einrichtungen vorgesehen, um eine Protokollentwicklung für den Kunden oder Benutzer zu vereinfachen. Die Einrichtungen stellen für die Verwendung fertige Ressourcenverwaltungsfunktionen (z. B. Zeitnehmer) bereit, die die Zustandsmaschinenlogik, die zum Implementieren von gewünschten Protokollen benötigt wird, stark vereinfachen. Verschiedene Einrichtungen können vorzugsweise für jede Softwareschicht vorgesehen werden, da die Ressourcen, die von jeder Schicht benötigt werden, unterschiedlich sein können.
- Fig. 5 ist ein Softwarediagramm, das eine repräsentative Verwendung der vorliegenden Erfindung im Kontext der Netzsignalisierungs-Protokollschicht 3 zeigt. Wie voranstehend erwähnt, läuft eine Schicht 3 Software typischerweise entweder auf der CPU/Matrixkarte 12, den Leitungskarten 14 oder 15 oder der Paketarbeitsmaschinenkarte 17 der Vermittlungsstelle 2 (Fig. 1).
- Datenblöcke 52a, 52n werden jedem Kanal der Vermittlungsstelle zugewiesen. Für den Fall des Kanals 0 verweisen die Zeiger der aktiven Zustands/Ereignis-Tabelle und der aktiven Primitiven-Tabelle, wie mit den schematischen Linien angedeutet, auf Tabellen, die mit einem residenten, sich nicht im Dienst befindlichen Protokoll (Out-of-Service-Protokoll) 58a assoziiert sind. Die Zeiger der zugewiesenen Zustands/Ereignis-Tabelle und der zugewiesenen Primitive-Tabelle für den Kanal 0 zeigen auf Tabellen, die einem heruntergeladenen Kunden-definierten Netzprotokoll n+1, welches mit dem Bezugszeichen 60a bezeichnet ist, zugeordnet sind.
- Andere Protokolle, die zur Verwendung vorhanden und verfügbar sind, sind residente Netzprotokolle 58b, 58c und ein heruntergeladenes Kunden-definiertes Netzprotokoll 60b, 60c.
- Eine Schicht 3 Bibliothek S4 für atomare Funktionen ist verbunden, um Information an der Zustandsmaschinen-Arbeitsmaschine 48 bereitzustellen.
- Die Schicht 3 Umgebungsunterstützungs-Einheiten 56 umfassen: eine Empfangsleitungs- Signalisierungs-Scanverwaltung; eine digitale Signalverarbeitungs- (DSP)-Funktions-Aktivierung- Verwaltung; eine Alarm/Out-Of-Service (OOS) Verwaltung; eine Zeitnehmerverwaltung; und eine dynamische Speicherverwaltung.
- Die Zeiger der aktiven Zustands/Ereignis-Tabelle und der aktiven Primitiven-Tabelle, die an der Zustandsmaschinen-Arbeitsmaschine 48 vorgesehen sind, zeigen auf das Protokoll, welches gegenwärtig gerade den Kanal steuert. Unter normalen Betriebsbedingungen wird das aktive Protokoll das gleiche wie das zugewiesene Protokoll sein. Jedoch ist in dieser Figur das aktive Protokoll das Out-of-Service Netzprotokoll 0. Dies kann zum Beispiel aufgetreten sein, weil auf dem Kanal 0 eine Alarmbedingung erfasst wurde und der Kanal automatisch auf das Out-of-Service Netzprotokoll 0 übergegangen ist.
- Das von einem bestimmten Kanal verwendete aktive Protokoll ist nicht notwendigerweise permanent und kann in Echtzeit im Ansprechen auf das Auftreten eines spezifizierten Ereignisses dynamisch geändert werden. Zum Beispiel zeigen die Zeiger der zugewiesenen Zustands/Ereignis-Tabelle und der zugewiesenen Primitive-Tabelle für den Kanal 0 auf ein Kunden-definiertes Netzprotokoll 1 (60a), wie in Fig. 5 gezeigt. Es sei angenommenen, dass ein ankommender Anruf auf einem Kanal 0 empfangen wird, das aber das Netzsignalisierungsprotokoll des ankommenden Anrufs sich von demjenigen des Kunden-definierten Netzprotokolls 1 (60a) unterscheidet. An diesem Punkt kann eine Nachricht von der Schicht 3 an die Schicht 4 gesendet werden, die anzeigt, dass eine Änderung in dem aktiven Protokoll benötigt wird, um den ankommenden Anruf geeignet zu verarbeiten. Im Ansprechen darauf kann die Schicht 4 einfach mit einer Nachricht an die Schicht 3 antworten, das aktive Protokoll zu ändern und die Verarbeitung des ankommenden Anrufs vornehmen, oder kann eine Nachricht an die Anwendungsschicht 5 zum Anfordern von Befehlen geben. Sobald der ankommende Anruf abgeschlossen ist, kann dem Kanal sein ursprüngliches Protokoll (oder irgendein anderes, welches innerhalb der Vermittlungsstelle verfügbar ist) durch eine ähnliche Serie von Nachrichten oder durch eine atomare Funktion in dem aktiven Protokoll erneut zugewiesen werden.
- Eine ähnliche Funktion kann für den Fall eines abgehenden Anrufs ausgeführt werden. Das heißt, wenn einem verfügbaren Kanal, der für einen abgehenden Anruf benötigt wird, ein Protokoll zugewiesen ist, welches für den vorgesehenen Anruf nicht geeignet ist (d. h. die gewählten Zahlzeichen zeigen an, dass der Anruf für das Ausland bestimmt ist, welches ein anderes Protokoll verwendet), dann kann das Protokoll des verfügbaren Kanals durch eine geeignete Nachricht von der Schicht 4 dynamisch geändert werden. Sobald der Anruf abgeschlossen ist, kann dem Kanal sein ursprüngliches oder ein anderes Protokoll, wie gewünscht, neu zugewiesen werden.
- In Fig. 6A und denjenigen, die folgen, wird ein Zustand als ein Kreis dargestellt, eine atomare Funktion wird als ein rechteckiger Kasten dargestellt und ein Ereignis wird durch eine Wortabkürzung, die entlang eines Pfads angeordnet ist, der von einem Zustand herausführt, dargestellt. Information, die in Klammern in einer atomaren Funktion gezeigt ist, stellt Argumente oder Daten dar, die diese Funktion zugeordnet sind.
- Die Fig. 6A-6C sind ein Beispiel der Anwendung der vorliegenden Erfindung in dem Kontext der Verbindungsschicht 2.
- Das Protokoll beginnt mit dem zugeordneten Kanal in dem normalen Zustand 1 (NS1), der der RUHE Zustand 62 ist. Auf das Auftreten des Ereignisses eines Schicht 3 zu Schicht 2 Aufbaus für eine Vorwärts-R2-Signalisierung L3_L2nSETUP_FOR_FWD_R2), werden eine Serie von atomaren Funktionen ausgeführt (af2, af3, af4, af5 und af1). Diese atomaren Funktionen arbeiten jeweils, um einen R2 Empfangsknoten für einen Zeitschlitz zu schaffen, einen DSP Kanal (z. B. einen DSP Chip, der als ein Tonempfänger arbeitet) für eine R2 Decodierung anzubringen, eine Schicht 2 zu Schicht 3 Empfängerangebrachte Nachricht zu senden (L2_L3nRCVR_ATTACHED), einen Zeitnehmer (Zeitnehmer1) zu setzen und dann den nächsten Zustand auf den normalen Zustand 2 (NS2) 64 zu setzen. Es sei darauf hingewiesen, dass die Argumente, die der atomaren Funktionen af5 zugeordnet sind, vorzugsweise verwendet werden, um einen gewünschten Zeitnehmer ID und einen Index in ein Feld von vorgegebenen Zeitnehmerwerten zu spezifizieren. Die Argumente, die der atomaren Funktionen af1 zugeordnet sind, werden vorzugsweise zum Spezifizieren der Nummer des nächsten Zustands und des Typs des nächsten Zustands verwendet.
- Wenn das nächste Ereignis der Ablauf des Zeitnehmersl ist (TIMER1_EXPIRATION der ZEITNEHMER1_ABLAUF), dann werden die atomaren Funktionen af10 und af11 ausgeführt und der Kanal wird auf den RUHE Zustand 62 zurückgeführt. Wenn jedoch das nächste Ereignis der Empfang einer Nachricht in einem DSP ist, die eine Stille anzeigt (DSP_L2nRCVED_SILENCE oder DSP L2n RCVED_STILLE), dann werden die atomaren Funktionen af5 (Setzen des Zeitnehmers 1) und af1 (Setzen des nächsten Zustands) ausgeführt, wonach das Protokoll zum normalen Zustand 3 (NS3) 66 weitergeht, in dem es auf R2 Vorwärtssignale wartet.
- Wenn das nächste Ereignis der Ablauf des Zeitnehmersl (TIMER1_EXPIRATION) ist, dann werden die atomaren Funktionen afl0 und af1 1 ausgeführt und der Kanal wird auf den RUHE Zustand 62 zurückgeführt. Wenn das nächste Ereignis der Empfang einer Nachricht zum Übertragen von Rückwärts- R2-Signalen ist (L3_L2nXMIT_BWD_R2_SIG), dann wird die atomare Funktion af12 ausgeführt, die die Rückwärts-R2-Signale für eine spätere Übertragung in eine Warteschlange einreiht, gefolgt von einer Rückkehr nach NS3 66. Wenn das Ereignis eine Nachricht ist, die den Empfang von Vorwärts-R2-Signalen anzeigt (DSP_L2nRCVED_R2_FWD_SIG), dann werden die atomaren Funktionen af7 (Senden eines Berichts des R2 Signals an die Schicht 3), af8 (Test, ob ein Rückwärts-Signal für eine Übertragung in einer Warteschlange eingereiht ist) und af1 (Setzen des nächsten Zustands) ausgeführt und das Protokoll geht weiter zum internen Zustand 4 (IS4) 68.
- Wenn das nächste Ereignis ein wahres internes Ereignis (L2_INT_EVENT_1) ist, was anzeigt, dass das Rückwärts-R2-Signal in eine Warteschlange eingereiht ist, wird eine atomare Funktion af9 (Übertragen des in eine Warteschlange eingereihten Rückwärts-R2-Signals) ausgeführt, gefolgt von af5, af1 und das Protokoll kehrt zum Zustand 64 zurück. Wenn das nächste Ereignis ein unwahres internes Ereignis (L2_INT_EVENT_0) ist, was andeutet, dass das Rückwärts-R2-Signal nicht in eine Warteschlange eingereiht ist, wird eine atomare Funktion af5 (Setzen des Zeitnehmersl) ausgeführt, gefolgt von af1 (Setzen des nächsten Zustands) und das Protokoll rückt zum normalen Zustand 5 (NS5) 70 vor. Auf den Empfang einer Nachricht zum Übertragen von Rückwärts-R2-Signalen (L3_L2nXMIT_BMD_R2_SIG) hin werden atomare Funktionen af9, af5 und af1 ausgeführt und das Protokoll kehrt zum Zustand 64 zurück.
- Bezugnehmend nun auf Fig. 6B lässt sich ersehen, dass jede Sequenz von atomaren Funktionen, die in Fig. 6A gezeigt sind, als ein Primitive (Primitive 1-7) definiert worden ist. Tatsächlich stellt jedes Primitive eine abgekürzte Vorgehensweise zum Identifizieren einer aufzurufenden gewünschten Sequenz von atomaren Funktionen bereit.
- Fig. 6C zeigt eine Primitive-Tabelle, die in einem tabellenförmigen Format die Sequenz von atomaren Funktionen für jedes Primitive in Fig. 6B sowie eine Zustands/Ereignis-Tabelle, die die Beziehungen zwischen den Zuständen, Ereignissen und Primitiven der Fig. 6B definiert, auflistet. Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung würde ein Kunde, der das in den Fig. 6A und 6B gezeigte Protokoll schaffen möchte, nur die Tabellen definieren müssen, die in Fig. 6C gezeigt sind. Diese Tabellen würden dann an die Vermittlungsstelle 2 (Fig. 1) durch eine Serie von Nachrichten von der Host-Einrichtung heruntergeladen.
- Die Fig. 7A-7C zeigen ein Beispiel der Anwendung der vorliegenden Erfindung auf ein Protokoll der Netzprotokollschicht 3 zum Verarbeiten der anfänglichen Phase eines Anrufaufbaus unter Verwendung einer internationalen R2 Zwangssignalisierung (International Compelled R2 Signalling). Das Protokoll beginnt mit dem zugeordneten Kanal in einem normalen Zustand 1 (NS1) 72, welcher der RUHE-Zustand ist. Auf das Auftreten des Ereignisses eines Empfangs von Leitungssignalisierungsbits 0011 (die die Bitwerte sind, die eine Hereinbelegung (inseizure) signalisieren), werden eine Serie von atomaren Funktionen ausgeführt (afl7, afl9, af21 und af1). Diese atomaren Funktionen arbeiten jeweils zum Einstellen der gegenwärtigen Hereinbelegungs-Befehlsliste an der voreingestellten Vermittlungsstellenliste, zum Einstellen des gegenwärtigen Befehlsindex auf 0, zum Testen des gegenwärtigen Hereinbelegungs- Befehls und dann zum Einstellen des nächsten Zustands auf einen internen Zustand 2 (IS2) 74.
- Wenn das nächste Ereignis ein Schicht 3 internes Ereignis 0 (L3_INT_EVENT_0) ist, welches anzeigt, dass der gegenwärtige Hereinbelegungs-Befehl getestet wurde und zu 0 befunden wurde, dann wird eine atomare Funktion af22 ausgeführt, die den Kanal entleert. Wenn jedoch das nächste Ereignis ein Schicht 3 internes Ereignis 7 (L3_INT_EVENT_7) ist, was anzeigt, dass der gegenwärtige Hereinbelegungs-Befehl eine Hereinbelegungs-Bestätigung erzeugen soll, dann wird eine atomare Funktion af30 ausgeführt, die prüft, um nachzusehen, ob der nächste Hereinbelegungs-Befehl Zahlzeichen der Stufe N empfangen soll, gefolgt von einer atomaren Funktion af1, die den nächsten Zustand auf einen internen Zustand 3 (IS3) einstellt.
- Wenn das nächste Ereignis L3_INT_EVENT_0 oder UNWAHR ist, was anzeigt, dass der nächste Hereinbelegungs-Befehl nicht Zahlzeichen der Stufe N empfangen soll, dann geht das Protokoll weiter zur Ausführung einer atomaren Funktion af2 (Übertragen einer Belegungs-Bestätigung mit Bitwerten 1101). Wenn das nächste Ergebnis L3_INT_EVENT_1 oder WAHR ist, wird eine atomare Funktion 31 ausgeführt, die ein Aufbau für einen R2 Vorwärts-Zahlzeichenempfang ist, gefolgt von einer atomaren Funktionen af2 (Senden einer Belegungs-Bestätigung). Ein Aufbau für einen Zahlzeichen-Empfang beinhaltet typischerweise eine Zuordnung einer DSP Ressource, die auf einer DSP Karte 16 gefunden wird (Fig. 1).
- Als nächstes wird eine atomare Funktion af5 ausgeführt, die einen Zeitnehmer (Zeitnehmer1) einstellt, um eine Warteperiode für das erwartete erste Zahlzeichen einzurichten. Dies wird gefolgt von einer atomaren Funktion af1, die den nächsten Zustand auf einen normalen Zustand 4 (NS4) einstellt, was anzeigt, dass die Hereinbelegung bestätigt worden ist und dass der Kanal erwartet, ein Gruppe 1 Vorwärts- MFR2-Signal zu empfangen.
- Wiederum, wie in Fig. 7B gezeigt, kann jede Sequenz von atomaren Funktionen, die in Fig. 7A gezeigt sind, als ein Primitive (1-5) definiert werden. Fig. 7C zeigt die entsprechende Primitive-Tabelle und die Zustands/Ereignis-Tabelle für Fig. 7B.
- Fig. 8A ist ein anderes Beispiel einer Anwendung der vorliegenden Erfindung in einem Protokoll der Netzprotokollschicht 3 zum Verarbeiten der anfänglichen Phase eines Anrufaufbaus unter Verwendung einer T1 E&M Wink-Start-Signalisierung.
- Das Protokoll beginnt in einem normalen Zustand (NS1) 80. Auf den Empfang von Bitwerten 11 hin, was eine Hereinbelegung (inseizure) darstellt, wird eine atomare Funktion af30 ausgeführt, die testet, ob eine Sammlung von Zahlzeichen der Stufe 1 angezeigt wird. Dies wird gefolgt von einer atomaren Funktionen af1, die den nächsten Zustand auf einen internen Zustand (IS2) 82 einstellt.
- Wenn das nächste Ereignis L3_INT_EVENT_0 oder UNWAHR ist, was bedeutet, dass die Zahlzeichen-Sammlung nicht angezeigt wird, dann führt das Protokoll eine atomare Funktion af5 (Einstellen eines Zeitnehmersl für eine Vor-Wink-Verzögerung (Pre-Wink Delay)) aus, gefolgt von af1 zum Einstellen des nächsten Zustands auf einen normalen Zustand (NS3) 84. Wenn das nächste Ereignis L3_INT_EVENT_1 oder WAHR ist, was bedeutet, dass die Zahlzeichen-Sammlung angezeigt wird, wird eine atomare Funktion 31 ausgeführt, die ein Aufbau für einen MFR1 Zahlzeichen-Empfang ist, gefolgt von af5 und af1.
- Auf den Ablauf eines Zeitnehmersl hin (TIMER1_EXPIRATION), wird eine atomare Funktion af2 ausgeführt (Wink Ein (Wink On)), gefolgt von atomaren Funktionen af5 (Einstellen eines Zeitnehmers für die Wink-Dauer) und af1 zum Einstellen des nächsten Zustands auf einen normalen Zustand (NS4) 86. Wiederum auf den Ablauf des Zeitnehmersl hin wird eine atomare Funktion af2 ausgeführt (Wink Aus (Wink Off)), gefolgt von af5 (Einstellen eines Zeitnehmersl zum Warten auf eine Zahlzeichen-Kette) und af1 zum Einstellen des nächsten Zustands auf einen normalen Zustand (NS5) 88.
- Fig. 8B zeigt die Korrelation zwischen den atomaren Funktionen, die in Fig. 8A gezeigt sind, und Primitiven 1-5, und Fig. 8C zeigt die entsprechende Primitive-Tabelle und die Zustands/Ereignis-Tabelle, mit der ein Benutzer oder Kunde das beschriebene Protokoll definieren kann.
- Fig. 9A ist ein Beispiel einer Anwendung der vorliegenden Erfindung in der Anrufverarbeitungsschicht 4. In diesem Beispiel wird die vorliegende Erfindung zum Implementieren eines Protokolls zum Bereitstellen einer interaktiven Sprachantwort (IVR) zu einem ankommenden Anruf verwendet. Das Protokoll beginnt in einem RUHE Zustand (S1) 90. Auf den Empfang einer Aufbaunachricht (L3_SETUP_INDICATION oder L3_AUFBAU_ANZEIGE) hin, werden die atomaren Funktionen af1, af2, af3, af4 und af5 ausgeführt. Diese atomaren Funktionen dienen jeweils zum Senden einer Alarmierungsnachricht an eine Netzprotokollschicht 3, zum Senden einer Verbindungsnachricht (zum Beantworten des Anrufs) an die Schicht 3 zum Senden einer Nachricht zum Zuordnen einer DSP-Ressource für eine interaktive Zahlzeichenketten-Sammlung, zum Einstellen eines Zeitnehmersl zum Warten auf eine Zuordnung der DSP Ressource und zum Einstellen des nächsten Zustands auf einen normalen (Warte- )Zustand (NS2) 92.
- Wenn das nächste Ereignis der Ablauf des Zeitnehmersl (TIMER1_EXPIRATION) ist, dann wird eine atomare Funktion af6 ausgeführt, um den Kanal zurückzusetzen. Wenn das nächste Ereignis ein Empfang einer Nachricht ist, die anzeigt, dass die DSP Ressource zugeordnet wurde, wird eine atomare Funktion af7 ausgeführt, die den Anrufer mit einer gewünschten Ansage verbindet, gefolgt von af4, die den Zeitnehmer1 für einen Zahlzeichen-Wartevorgang einstellt, und af5, die den nächsten Zustand auf einen normalen Zustand (S3) 94 zum Warten auf Zahlzeichen einstellt.
- Wenn das nächste Ereignis der Ablauf des Zeitnehmers 1 ist, dann führt das Protokoll wieder eine atomare Funktion 7 aus (spielt die Ansage zu dem Anrufer erneut ab). Wenn das nächste Ereignis ein Empfang von Zahlzeichen von der zugeordneten DSP Ressource ist, werden die atomaren Funktionen at8 (Informieren der Schicht 5, dass Zahlzeichen empfangen wurden), af4 (Einstellen des Zeitnehmersl zum Warten auf einen Befehl von der Schicht 5) und af5 (Einstellen des nächsten Zustands auf einen normalen Zustand (S4) 96) ausgeführt.
- Wiederum zeigen die Fig. 9B und 9C die Zusammenhänge zwischen den Zuständen, Ereignissen, atomaren Funktionen und Primitiven, die das IVR Protokoll der Fig. 9A definieren.
- Schließlich zeigt Fig. 10A ein Beispiel einer Anwendung der vorliegenden Erfindung im Kontext einer Anwendungsschicht 5. In diesem Beispiel wird ein Protokoll für eine einwärts gerichtete (inbound) Anwendung wie ein gebührenfreier (800) Dienst beschrieben.
- Das Protokoll beginnt in einem normalen Zustand (S1) RUHE 98. Auf einen Empfang einer Aufforderung nach einem Dienst mit einer Zahlzeichen-Nachricht von der Schicht 4 (L4_REQ_FOR_SERV_WITH_DIGITS oder L4_AUFFORDERUNG_NACH_EINEM DIENST_MIT_ZAHLZEICHEN) werden atomare Funktionen af1 (Senden einer Bestätigungsnachricht an die Schicht 4), af2 (Senden, an eine Schicht 5 Wegsteuerung (Route Control) (Prozess), einer Nachricht mit einer Kanal-ID und Zahlzeichen), af4 (Einstellen eines Zeitnehmers zum Warten auf eine Antwort von der Schicht 5 Wegsteuerung) und af5 (Einstellen des nächsten Zustands auf einen normalen Zustand (S2) 100) ausgeführt.
- Wenn in dem Zustand (S2) 100 das nächste Ereignis der Ablauf des Zeitnehmers 1 ist, ist ein Kanalausfall aufgetreten und eine atomare Funktion af8 wird ausgeführt. Wenn das nächste Ereignis eine Nachricht von der Schicht 5 Wegsteuerung ist, um den Kanal, der einen Dienst angefordert hat, zu verbinden, wird eine atomare Funktion af7 ausgeführt, die eine Nachricht an die Schicht 4 zum Verbinden von zwei Kanälen sendet. Dies wird gefolgt von af4, die einen Zeitnehmer1 zum Warten auf eine Bestätigung, dass die Verbindung hergestellt wurde, einstellt und dann af5, die den nächsten Zustand auf einen normalen (Warte-)Zustand (S4) 104 einstellt.
- Wenn im Zustand (S4) 104 das nächste Ereignis ein Ablauf des Zeitnehmers 1 ist, ist ein Kanalausfall aufgetreten und eine atomare Funktion af5 wird ausgeführt. Wenn das nächste Ereignis eine Nachricht von der Schicht 4 ist, die bestätigt, dass eine Verbindung hergestellt wurde (L4_L5nCONNECT_ ACK oder Ö4_L5n VERBINDUNGS_BESTÄTIGUNG), dann schaltet eine atomare Funktion af6 den Zeitnehmer1 ab, gefolgt von af5, die den nächsten Zustand auf einen normalen Zustand (55) 106 einstellt. Auf einen Empfang einer Nachricht von der Schicht 4 hin, die eine Freigabe des Kanals anzeigt, wird eine atomare Funktion af3 verwendet, um eine Bestätigung an die Schicht 4 zu senden, gefolgt von af5, die den Kanal auf den RUHE Zustand 98 zurückführt.
- Wenn unter Bezugnahme wiederum auf den Zustand 100 das nächste Ereignis eine Nachricht von der Schicht S Wegsteuerung ist, um den ankommenden Anruf zu einer Gruppe in eine Warteschlange einzureihen, wird eine atomare Funktion af9 ausgeführt, die den Anrufer mit einer aufgezeichneten Ansage verbindet. Dies wird gefolgt von einer atomaren Funktion af4, die einen Zeitnehmer1 auf eine Bestätigung von einer Schicht 4 einstellt, was wiederum von af5 gefolgt wird, um den nächsten Zustand auf einen normalen Zustand (S3) 102 einzustellen.
- Wenn im Zustand (S3) 102 das nächste Ereignis der Ablauf des Zeitnehmersl ist, ist ein Kanalausfall aufgetreten und eine atomare Funktion af8 wird ausgeführt. Wenn das nächste Ereignis eine Nachricht von der Schicht 4 ist, die bestätigt, dass eine Verbindung hergestellt wird, wird af6 ausgeführt, um den Zeitnehmer1 abzuschalten und af4 wird ausgeführt, um einen Zeitnehmer 2 für eine mögliche erneute Abspielung der aufgezeichneten Ansage einzustellen. Wenn ein Kanal in einem Zustand (S3) 102 lange genug bleibt, so dass der Zeitnehmer 2 abläuft, wird somit das Protokoll wieder a19 ausführen und die Ansage erneut abspielen.
- Wenn jedoch im Zustand (S3) 102 das nächste Ereignis eine Nachricht von der Schicht 5 Wegsteuerung zum Verbinden des Kanals, der einen Dienst angefordert hat, ist, wird eine atomare Funktion af6 zum Abschalten des Zeitnehmers 2 ausgeführt, gefolgt von af7, die eine Nachricht an die Schicht 4 zum Verbinden von zwei Kanälen sendet. Dies wird von af4 gefolgt, die einen Zeitnehmer1 zum Warten auf eine Bestätigung, dass die Verbindung hergestellt wurde, einstellt und dann von af5, die den nächsten Zustand auf einen normalen (Warte-)Zustand (S4) 104 einstellt.
- Die Fig. 10B und 10C zeigen die Beziehungen zwischen den Zuständen, Ereignissen, atomaren Funktionen und Primitiven, die das gebührenfreie Dienstprotokoll der Fig. 10A definieren.
- Die vorangehende Beschreibung wurde auf eine spezifische Ausführungsform dieser Erfindung begrenzt. Es wird jedoch offensichtlich sein, dass Veränderungen und Modifikationen an der Erfindung durchgeführt werden können, wobei einige oder sämtliche der Vorteile der Erfindung erreicht werden. Deshalb ist es die Aufgabe der beigefügten Ansprüche, sämtliche derartigen Veränderungen und Modifikationen, so wie sie in den Umfang der Erfindung fallen, abzudecken.
Claims (12)
1. Verfahren zum Entwickeln von einem oder mehreren Anruf-zugeordneten Protokollen (42a-42c,
44a-44c) zur Verwendung in einer Telekommunikationsanwendung, wobei das Verfahren dadurch
gekennzeichnet ist, dass es die folgenden Schritte umfasst:
a) Schaffen von einem oder mehreren Zustands/Ereignis-Tabellen, die jeweils eine Vielzahl
von vorgegebenen logischen Zuständen definieren, wobei wenigstens ein vorgegebenes Ereignis jedem der
Vielzahl von vorgegebenen logischen Zuständen zugeordnet ist, und eines Primitives, das jedem besagten
wenigstens einem vorgegebenen Ereignis zugeordnet ist, wobei das Primitive auf ein Auftreten des
zugehörigen Ereignisses hin aufgerufen wird;
b) Schaffen von einer oder mehreren Primitive-Tabellen, die jeweils eine vorgegebene Serie
von vorgegebenen Funktionen für jedes besagte Primitive definieren; und
c) Schaffen von einem oder mehreren Protokollen (42a-42c, 44a-44c) im Ansprechen auf
eine oder mehrere Nachrichten, die von einer Host-Einrichtung (30) erzeugt werden, wobei jedes der einen
oder mehreren Protokolle durch eine vorgegebene Kombination von einer der Zustands/Ereignis-Tabellen
und einer der einen oder mehreren Primitive-Tabellen dargestellt wird, wobei jedes der Protokolle zum
Verarbeiten von ankommenden oder abgehenden Anrufen vorgesehen ist; wobei die Protokolle sich auf ein
dynamisches Verbinden und Trennen von Kommunikationspfaden zwischen verschiedenen einzelnen einer
Vielzahl von Kanälen und Ports in einer programmierbaren Telekommunikationsvermittlungsstelle (10)
beziehen.
2. Verfahren nach Anspruch 1, wobei das Verfahren ferner die folgenden Schritte umfasst:
Speichern der einen oder mehreren Protokolle (42a-42c, 44a-44c) innerhalb der programmierbaren
Telekommunikationsvermittlungsstelle (10) oder der Host-Einrichtung (30); und
Zuweisen wenigstens eines der Protokolle (42a-42c, 44a-44c) zu jedem der Kanäle oder Ports.
3. Verfahren nach Anspruch 2, wobei auf eine Erfassung eines ankommenden Anrufs oder einer
Einleitung eines abgehenden Anrufs an einem der Kanäle oder Ports ein Bestimmen, ob das Protokoll (42a-
42c, 44a-44b), welches gegenwärtig dem einen der Kanäle oder Ports zugewiesen ist, in der Lage ist, den
ankommenden oder abgehenden Anruf zu verarbeiten, und wenn das gegenwärtig zugeordnete Protokoll
nicht in die Lage ist, den ankommenden oder abgehenden Anruf zu verarbeiten, ein dynamisches
Auswählen eines anderen der Protokolle (42a-42c, 44a-44c), welches in die Lage ist, den ankommenden
oder abgehenden Anruf zu verarbeiten, ausgeführt wird.
4. Verfahren nach Anspruch 1, ferner umfassend die folgenden Schritte:
(d) Speichern der einen oder mehreren Anruf-zugeordneten Protokolle innerhalb der
programmierbaren Telekommunikationsvermittlungsstelle (10); und
(e) Ausführen der einen oder mehreren Anruf-zugeordneten Protokolle (42a-42c, 44a-44c)
innerhalb der Telekommunikationsvermittlungsstelle (10).
5. Verfahren nach Anspruch 1, ferner umfassend den folgenden Schritt:
Zuweisen eines entsprechenden Datenblocks (40a-40n), der Information, die einen gegenwärtigen
logischen Zustand oder einen Zustandstyp des entsprechenden Kanals oder Ports darstellt, einen Zeiger auf
eine aktive Zustands/Ereignis-Tabelle, einen Zeiger auf eine aktive Primitive-Tabelle, einen Zeiger auf eine
zugewiesene Zustands/Ereignis-Tabelle und einen Zeiger auf eine zugewiesene Primitive-Tabelle darstellt,
an jeden der Kanäle oder Ports.
6. Verfahren nach Anspruch 5, wobei jedes der einen oder mehreren Protokolle durch eine
Finitzustandsmaschine (48) dargestellt wird.
7. Verfahren nach Anspruch 6, wobei jede der einen oder mehreren Finitzustandsmaschinen eine
Bibliothek umfasst, die Definitionen der vorgegebenen Funktionen enthält, wobei jede der einen oder
mehreren Finitzustandsmaschinen von einer Zustandsmaschinen-Arbeitsmaschine interpretiert wird, die im
Ansprechen auf die Zeiger und/oder die Bibliothek arbeitet.
8. Verfahren zum Entwickeln einer Telekommunikationsanwendung zum Ausführen von
Anrufverarbeitungsfunktionen, wobei das Verfahren dadurch gekennzeichnet ist, dass es die folgenden
Schritte umfasst:
(a) Definieren von einem oder mehreren logischen Zuständen, wobei jeder besagte eine oder
die mehreren logischen Zustände einen möglichen gültigen Zustand eines zugeordneten
Telekommunikationskanals darstellt/darstellen;
(b) Definieren wenigstens eines Ereignisses für jeden der einen oder mehreren logischen
Zustände, wobei jedes besagte Ereignis eine möglicherweise gültige Bedingung darstellt, um einen
Übergang auf einen anderen der Zustände zu bewirken;
(c) Wählen von einer oder mehreren Funktionen aus einer Bibliothek von vorgegebenen
Funktionen; und
(d) Zuordnen der gewählten einen oder mehreren Funktionen zu einem oder mehreren der
logischen Zustände, wodurch auf einen Übergang in den zugeordneten Zustand hin die gewählte eine oder
die mehreren Funktionen ausgeführt werden,
wobei die Anwendung die gewählte eine oder die gewählten mehreren Funktionen auf das
Auftreten des wenigstens einen Ereignisses ausführt, wenn der Kanal auf dem einen oder den mehreren
logischen Zuständen ist.
9. Verfahren nach Anspruch 8, ferner umfassend die folgenden Schritte:
(e) Speichern der Anwendung innerhalb einer Host-Einrichtung (30), die mit der
programmierbaren Telekommunikationsvennittlungsstelle (10) gekoppelt ist;
(f) Transferieren der Anwendung an das Telekommunikationssystem; und
(g) Durchführen der Anwendung innerhalb des Telekommunikationssystems.
10. System zum Entwickeln einer Telekommunikationsanwendung zum Ausführen von
Anrufverarbeitungsfunktionen, die sich auf einen zugewiesenen einen oder eine Vielzahl von Kanälen
beziehen, dadurch gekennzeichnet, dass die Anrufverarbeitungsfunktionen auf einen zugewiesenen einen
oder eine Vielzahl von Kanälen in einer programmierbaren Telekommunikationsvermittlungsstelle (10)
bezogen sind, wobei das System umfasst:
eine erste Definiereinrichtung zum Definieren von einem oder mehreren logischen Zuständen,
wobei jeder besagte eine oder die besagten mehreren logischen Zustände einen möglichen gültigen Zustand
eines zugeordneten Telekommunikationskanals darstellen;
eine zweite Definiereinrichtung zum Definieren wenigstens eines Ereignisses für jeden der einen
oder mehreren logischen Zustände, wobei jedes besagte Ereignis eine möglicherweise gültige Bedingung
darstellt, um einen Übergang auf einen anderen der Zustände zu bewirken;
eine Wähleinrichtung zum Wählen einer oder mehrerer Funktionen aus einer Bibliothek von
vorgegebenen Funktionen; und
eine Zuordnungseinrichtung, um die gewählte eine oder die gewählten mehreren Funktionen zu
einem oder mehreren der logischen Zustände zuzuordnen, wobei auf einen Übergang in den zugeordneten
Zustand hin die gewählte eine oder die gewählten mehreren Funktionen ausgeführt werden;
wobei die Anwendung die gewählte eine oder die gewählten mehreren Funktionen auf das
Auftreten des wenigstens eines Ereignisses ausführt, wenn der Kanal auf dem einen oder den mehreren
logischen Zuständen ist.
11. System nach Anspruch 10, ferner umfassend:
eine Einrichtung zum Speichern der Anwendung innerhalb des programmierbaren
Telekommunikationssystems, oder eine Einrichtung zum Speichern der Anwendung innerhalb einer Host-
Einrichtung (30), die mit der programmierbaren Telekommunikationsvermittlungsstelle (10) gekoppelt ist,
und zum Transferieren der Anwendung an das Telekommunikationssystem; und
eine Durchführungseinrichtung zum Durchführen der Anwendung innerhalb des
programmierbaren Telekommunikationssystems.
12. Programmierbares Telekommunikationssystem, umfassend:
eine Vermittlungseinrichtung (10) zum Verbinden oder Trennen von Kommunikationspfaden
zwischen verschiedenen einzelnen einer Vielzahl von Kanälen; eine Hosteinrichtung (30), die mit der
Vermittlungseinrichtung (10) gekoppelt ist; dadurch gekennzeichnet, dass die Vermittlungseinrichtung (10)
eine steuerbare Vermittlungseinrichtung zum dynamischen Verbinden oder Trennen der
Kommunikationspfade ist und einen Zeitschlitz-Austausch zum Vermitteln einer Vielzahl von Zeitschlitzen,
die den Kanälen entsprechen, umfasst; und dass die Host-Einrichtung (30) konfiguriert ist, um die
steuerbare Vermittlungseinrichtung (10) zu steuern; und dadurch, dass sie eine Einrichtung zum
Durchführen einer Anwendung zum Ausführen von Anruf-zugeordneten Funktionen, die sich auf einen
zugewiesenen der Vielzahl von Kanälen beziehen, umfasst, wobei der zugewiesene Kanal einen oder
mehrere vorgegebene logische Zustände erfährt, wobei die Anwendung wenigstens ein Ereignis jedem der
einen oder mehreren vorgegebenen logischen Zustände zuordnet; wobei jedes besagte Ereignis eine
möglicherweise gültige Bedingung darstellt, wenn der zugewiesene Kanal auf einem der zugeordneten
einen oder mehreren logischen Zuständen ist, und wobei ferner die Anwendung eine Serie von einer oder
mehreren vorgegebenen Funktionen ausführt, wobei die Anwendung eine der einen oder mehreren Serien
von einer oder mehreren vorgegebenen Funktionen wenigstens einer zugeordneten Kombination des
logischen Zustands und des zugeordneten Ereignisses zuordnet;
eine Einrichtung zum Speichern der Anwendung; und
eine Einrichtung, die mit der Ausführungseinrichtung gekoppelt ist, zum Erfassen des Auftretens
der einen oder mehreren vorgegebenen Ereignisse.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/134,122 US5426694A (en) | 1993-10-08 | 1993-10-08 | Telecommunication switch having programmable network protocols and communications services |
PCT/US1994/011319 WO1995010912A1 (en) | 1993-10-08 | 1994-10-05 | Telecommunication switch having programmable network protocols and communications services |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69429530D1 DE69429530D1 (de) | 2002-01-31 |
DE69429530T2 true DE69429530T2 (de) | 2002-08-01 |
Family
ID=22461861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69429530T Expired - Lifetime DE69429530T2 (de) | 1993-10-08 | 1994-10-05 | Fernmeldevermittlung mit programmierbaren netzprotokollen und fernmeldediensten |
Country Status (17)
Country | Link |
---|---|
US (3) | US5426694A (de) |
EP (3) | EP0724804B1 (de) |
JP (1) | JP3317405B2 (de) |
CN (1) | CN1104797C (de) |
AT (1) | ATE211338T1 (de) |
AU (1) | AU684318B2 (de) |
BG (1) | BG62989B1 (de) |
BR (1) | BR9407781A (de) |
CA (1) | CA2173247C (de) |
DE (1) | DE69429530T2 (de) |
FI (1) | FI961533A0 (de) |
HU (1) | HU219692B (de) |
NO (1) | NO961351L (de) |
NZ (1) | NZ274738A (de) |
PL (2) | PL176468B1 (de) |
RU (2) | RU2150791C1 (de) |
WO (1) | WO1995010912A1 (de) |
Families Citing this family (123)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5859981A (en) * | 1995-07-12 | 1999-01-12 | Super P.C., L.L.C. | Method for deadlock-free message passing in MIMD systems using routers and buffers |
US5802162A (en) * | 1995-10-27 | 1998-09-01 | Lucent Technologies Inc. | Method for selectively changing the call handling capacity of a telecommunications switch |
US6088749A (en) * | 1995-11-30 | 2000-07-11 | Excel Switching Corp. | Universal API with generic call processing message having user-defined PPL event ID and generic response message for communications between telecommunications switch and host application |
US5826030A (en) * | 1995-11-30 | 1998-10-20 | Excel Switching Corporation | Telecommunication switch having a universal API with a single call processing message including user-definable data and response message each having a generic format |
GB9603582D0 (en) | 1996-02-20 | 1996-04-17 | Hewlett Packard Co | Method of accessing service resource items that are for use in a telecommunications system |
US5740236A (en) * | 1995-12-21 | 1998-04-14 | Ericsson, Inc. | System for providing feature services in a telecommunications system |
US5787248A (en) * | 1996-01-02 | 1998-07-28 | Racal-Datacom, Inc. | System for selecting network management protocol by setting protocol handler index based on newly selected protocol and selecting protocol handler address using protocol handler index |
AU2188897A (en) | 1996-02-13 | 1997-09-02 | Roger F. Atkinson | Multiple application switching platform and method |
US5875234A (en) | 1996-02-14 | 1999-02-23 | Netphone, Inc. | Computer integrated PBX system |
US5940487A (en) * | 1996-04-10 | 1999-08-17 | Alcatel Usa Sourcing, L.P. | Programmable call processing system and method |
US5991389A (en) * | 1996-06-13 | 1999-11-23 | Northern Telecom Limited | Programmable service architecture for call control processing |
US6028924A (en) * | 1996-06-13 | 2000-02-22 | Northern Telecom Limited | Apparatus and method for controlling processing of a service call |
US6038309A (en) * | 1996-06-13 | 2000-03-14 | Northern Telecom Limited | Apparatus and method for externally controlling processing of a service call |
US6243453B1 (en) | 1996-07-17 | 2001-06-05 | Alcatel Usa Sourcing, L.P. | Programmable call processing system and method |
GB2315646B (en) * | 1996-07-19 | 2001-02-14 | Ericsson Telefon Ab L M | Validation of procedures |
US6487676B1 (en) | 1996-07-19 | 2002-11-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Validation of procedures |
US5778059A (en) * | 1996-08-30 | 1998-07-07 | Digital Technics, Inc. | Distributed predictive and event-driven processing environment |
USRE39501E1 (en) * | 1996-10-31 | 2007-03-06 | Nvidia Corporation | Multiple network protocol encoder/decoder and data processor |
US6034963A (en) * | 1996-10-31 | 2000-03-07 | Iready Corporation | Multiple network protocol encoder/decoder and data processor |
US5987035A (en) * | 1996-11-20 | 1999-11-16 | Excel Switching Corporation | Process for signaling messages in a data switching network |
SG101460A1 (en) | 1997-02-14 | 2004-01-30 | Canon Kk | Data communication apparatus and method |
DE69840972D1 (de) | 1997-02-14 | 2009-08-27 | Canon Kk | Vorrichtung, System und Verfahren zur Datenübertragung und Vorrichtung zur Bildverarbeitung |
DE69837356T2 (de) | 1997-02-14 | 2007-11-29 | Canon K.K. | Vorrichtung, System und Verfahren zur Datenübertragung und Vorrichtung zur Bildverarbeitung |
EP0859324B1 (de) | 1997-02-14 | 2007-01-03 | Canon Kabushiki Kaisha | Vorrichtung, System und Verfahren zur Datenübertragung und Vorrichtung zur Bildverarbeitung |
US6014440A (en) * | 1997-07-21 | 2000-01-11 | Northern Telecom Limited | Inter-half call protocol negotiation techniques |
US6967972B1 (en) | 1997-07-31 | 2005-11-22 | Cisco Technology, Inc. | Universal protocol conversion |
US6111893A (en) * | 1997-07-31 | 2000-08-29 | Cisco Technology, Inc. | Universal protocol conversion |
US6151390A (en) * | 1997-07-31 | 2000-11-21 | Cisco Technology, Inc. | Protocol conversion using channel associated signaling |
US6259781B1 (en) * | 1997-08-06 | 2001-07-10 | Siemens Information And Communication Networks, Inc. | Generic distributed protocol converter |
US6381328B1 (en) * | 1997-08-29 | 2002-04-30 | Lucent Technologies Inc. | ETSI intelligent network capability set 1 intelligent network application protocol service switching point finite state machine |
FI107842B (fi) | 1997-09-23 | 2001-10-15 | Nokia Networks Oy | Adaptiivinen prosessorijärjestelmä |
US6370592B1 (en) * | 1997-11-04 | 2002-04-09 | Hewlett-Packard Company | Network interface device which allows peripherals to utilize network transport services |
US6122356A (en) * | 1997-11-13 | 2000-09-19 | Northern Telecom Limited | Concurrent state machine space in a telecommunications network |
US6052455A (en) * | 1997-11-13 | 2000-04-18 | Northern Telecom Limited | Universal data structure for use with a concurrent state machine space in a telecommunications network |
US6181694B1 (en) | 1998-04-03 | 2001-01-30 | Vertical Networks, Inc. | Systems and methods for multiple mode voice and data communciations using intelligently bridged TDM and packet buses |
US6389009B1 (en) | 2000-12-28 | 2002-05-14 | Vertical Networks, Inc. | Systems and methods for multiple mode voice and data communications using intelligently bridged TDM and packet buses |
US6526050B1 (en) | 1998-06-08 | 2003-02-25 | Excel Switching Co. | Programming call-processing application in a switching system |
US6373849B1 (en) * | 1998-06-08 | 2002-04-16 | Excel Switching Corporation | Resource interface unit for telecommunications switching node |
US7142650B1 (en) | 1998-06-12 | 2006-11-28 | Mci Communication Corporation | System and method for resource management |
US6587890B1 (en) | 1998-06-12 | 2003-07-01 | Mci Communications Corporation | Switch controller application programmer interface |
US7929516B2 (en) | 1998-06-12 | 2011-04-19 | Mci Communications Corporation | Intelligent services network using a switch controller |
US6480597B1 (en) * | 1998-06-12 | 2002-11-12 | Mci Communications Corporation | Switch controller for a telecommunications network |
US6650632B1 (en) | 1998-06-30 | 2003-11-18 | Cisco Technology, Inc. | Feature transparency in a telecommunications network |
US7212522B1 (en) | 1998-09-30 | 2007-05-01 | Cisco Technology, Inc. | Communicating voice over a packet-switching network |
US6570869B1 (en) | 1998-09-30 | 2003-05-27 | Cisco Technology, Inc. | Communicating voice over a packet-switching network |
US6658022B1 (en) | 1998-09-30 | 2003-12-02 | Cisco Technology, Inc. | Signaling protocol for controlling voice calls in a packet switching network |
ATE419723T1 (de) * | 1998-10-30 | 2009-01-15 | Telogy Networks Inc | Dynamische dsp-zuordnung für universalzugriff zu einem paketnetz |
US6240086B1 (en) | 1999-10-15 | 2001-05-29 | Texas Instruments Incorporated | Dynamic DSP allocation for universal access to a packet network |
US6898199B1 (en) * | 1999-03-18 | 2005-05-24 | Excel Switching Corporation | Architecture for providing flexible, programmable supplementary services in an expandable telecommunications system |
US6463056B1 (en) * | 1999-03-18 | 2002-10-08 | Excel Switching Corp. | Arrangement for providing network protocol data independence in an expandable telecommunications system |
US6594685B1 (en) | 1999-04-14 | 2003-07-15 | Excel Switching Corporation | Universal application programming interface having generic message format |
US7350202B2 (en) * | 1999-05-18 | 2008-03-25 | Welfeld Feliks J | Method for re-programming a firmware state machine during execution |
US6680952B1 (en) | 1999-06-01 | 2004-01-20 | Cisco Technology, Inc. | Method and apparatus for backhaul of telecommunications signaling protocols over packet-switching networks |
US6625198B1 (en) * | 1999-08-13 | 2003-09-23 | Qualcomm Incorporated | Method and apparatus for concurrently processing multiple calls in a spread spectrum communications system |
US8135842B1 (en) | 1999-08-16 | 2012-03-13 | Nvidia Corporation | Internet jack |
US20030179717A1 (en) * | 1999-09-27 | 2003-09-25 | Hobbs Christopher W. L. | Methods and apparatus for controlling multi-layer communications networks |
DE60026815T2 (de) * | 1999-12-30 | 2006-09-14 | Nortel Networks Ltd., St. Laurent | Adaptive Aufrechterhaltung der Dienstqualität (QoS) in einem verteilten PBX Netz |
US7990882B1 (en) | 1999-12-30 | 2011-08-02 | Avaya Inc. | Adaptively maintaining quality of service (QoS) in distributed PBX networks |
US7466741B2 (en) | 2000-03-03 | 2008-12-16 | Qualcomm Incorporated | Method and apparatus for concurrently processing multiple calls in a spread spectrum communications system |
US7039717B2 (en) * | 2000-11-10 | 2006-05-02 | Nvidia Corporation | Internet modem streaming socket method |
US6760772B2 (en) | 2000-12-15 | 2004-07-06 | Qualcomm, Inc. | Generating and implementing a communication protocol and interface for high data rate signal transfer |
US7379475B2 (en) * | 2002-01-25 | 2008-05-27 | Nvidia Corporation | Communications processor |
US8218555B2 (en) * | 2001-04-24 | 2012-07-10 | Nvidia Corporation | Gigabit ethernet adapter |
US6934302B2 (en) * | 2001-05-11 | 2005-08-23 | Alcatel | Context switching system and method for implementing a high speed link (HSL) in a network element |
US6985968B1 (en) | 2001-05-11 | 2006-01-10 | Alcatel | State machine architecture partitionable into control and data planes |
US8812706B1 (en) | 2001-09-06 | 2014-08-19 | Qualcomm Incorporated | Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system |
US7099453B2 (en) * | 2001-09-26 | 2006-08-29 | Sbc Properties, L.P. | Method and apparatus for enhanced call routing in a telecommunication system |
US7535913B2 (en) * | 2002-03-06 | 2009-05-19 | Nvidia Corporation | Gigabit ethernet adapter supporting the iSCSI and IPSEC protocols |
US20030217148A1 (en) * | 2002-05-16 | 2003-11-20 | Mullen Glen H. | Method and apparatus for LAN authentication on switch |
US7099438B2 (en) * | 2002-06-14 | 2006-08-29 | Ixia | Multi-protocol, multi-interface communications device testing system |
US7548512B2 (en) * | 2003-02-06 | 2009-06-16 | General Electric Company | Methods and systems for prioritizing data transferred on a Local Area Network |
WO2004095824A1 (fr) * | 2003-04-21 | 2004-11-04 | Radzh Fazilievich Kazmine | Systeme de commutation a distance de canaux telephoniques rnis |
CN105406947A (zh) | 2003-06-02 | 2016-03-16 | 高通股份有限公司 | 生成并实施一用于更高数据率的讯号协议和接口 |
RU2006107561A (ru) | 2003-08-13 | 2007-09-20 | Квэлкомм Инкорпорейтед (US) | Сигнальный интерфейс для высоких скоростей передачи данных |
MXPA06002809A (es) | 2003-09-10 | 2006-06-14 | Qualcomm Inc | Interfase de datos de alta velocidad. |
KR100882164B1 (ko) | 2003-10-15 | 2009-02-06 | 퀄컴 인코포레이티드 | 높은 데이터 레이트 인터페이스 |
TWI401601B (zh) | 2003-10-29 | 2013-07-11 | Qualcomm Inc | 用於一行動顯示數位介面系統之方法及系統及電腦程式產品 |
KR100915250B1 (ko) | 2003-11-12 | 2009-09-03 | 콸콤 인코포레이티드 | 향상된 링크 제어를 제공하는 고속 데이터 레이트 인터페이스 |
WO2005053272A1 (en) | 2003-11-25 | 2005-06-09 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
MXPA06006452A (es) | 2003-12-08 | 2006-08-31 | Qualcomm Inc | Interfase de tasa alta de datos con sincronizacion de enlace mejorada. |
US8065439B1 (en) | 2003-12-19 | 2011-11-22 | Nvidia Corporation | System and method for using metadata in the context of a transport offload engine |
US7624198B1 (en) | 2003-12-19 | 2009-11-24 | Nvidia Corporation | Sequence tagging system and method for transport offload engine data lists |
US8176545B1 (en) | 2003-12-19 | 2012-05-08 | Nvidia Corporation | Integrated policy checking system and method |
US7899913B2 (en) * | 2003-12-19 | 2011-03-01 | Nvidia Corporation | Connection management system and method for a transport offload engine |
US7260631B1 (en) | 2003-12-19 | 2007-08-21 | Nvidia Corporation | System and method for receiving iSCSI protocol data units |
US8549170B2 (en) * | 2003-12-19 | 2013-10-01 | Nvidia Corporation | Retransmission system and method for a transport offload engine |
US7249306B2 (en) * | 2004-02-20 | 2007-07-24 | Nvidia Corporation | System and method for generating 128-bit cyclic redundancy check values with 32-bit granularity |
US7206872B2 (en) * | 2004-02-20 | 2007-04-17 | Nvidia Corporation | System and method for insertion of markers into a data stream |
CA2775734C (en) | 2004-03-10 | 2014-01-07 | Qualcomm Incorporated | High data rate interface apparatus and method |
AU2005223960B2 (en) | 2004-03-17 | 2009-04-09 | Qualcomm Incorporated | High data rate interface apparatus and method |
EP1735988A1 (de) | 2004-03-24 | 2006-12-27 | Qualcomm, Incorporated | Schnittstellenvorrichtung und verfahren für hohe datenraten |
US7698413B1 (en) | 2004-04-12 | 2010-04-13 | Nvidia Corporation | Method and apparatus for accessing and maintaining socket control information for high speed network connections |
US8650304B2 (en) | 2004-06-04 | 2014-02-11 | Qualcomm Incorporated | Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system |
JP4664360B2 (ja) | 2004-06-04 | 2011-04-06 | クゥアルコム・インコーポレイテッド | 高速データレートインタフェース装置及び方法 |
US7536468B2 (en) * | 2004-06-24 | 2009-05-19 | International Business Machines Corporation | Interface method, system, and program product for facilitating layering of a data communications protocol over an active message layer protocol |
US7397905B1 (en) * | 2004-08-13 | 2008-07-08 | Edify Corporation | Interactive voice response (IVR) system providing dynamic resolution of data |
US20060045242A1 (en) * | 2004-09-01 | 2006-03-02 | Sbc Knowledge Ventures, L.P. | Deployment of announcements in local exchange switching platform |
US7957379B2 (en) * | 2004-10-19 | 2011-06-07 | Nvidia Corporation | System and method for processing RX packets in high speed network applications using an RX FIFO buffer |
US7260191B1 (en) * | 2004-10-26 | 2007-08-21 | Sprint Communications Company L.P. | System and method for interactive voice response call processing with external routing and application flow control |
US8723705B2 (en) | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
US8539119B2 (en) | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8667363B2 (en) | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8699330B2 (en) | 2004-11-24 | 2014-04-15 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
GB2422507A (en) * | 2005-01-21 | 2006-07-26 | 3Com Corp | An intrusion detection system using a plurality of finite state machines |
US8228926B2 (en) * | 2005-04-12 | 2012-07-24 | Genband Us Llc | Dynamic loading for signaling variants |
US20070081518A1 (en) * | 2005-08-10 | 2007-04-12 | Rajnish Jain | Open programmable software protocol stack for use with an Internet telephony system |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8730069B2 (en) | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
US20070127652A1 (en) * | 2005-12-01 | 2007-06-07 | Divine Abha S | Method and system for processing calls |
CN101371609B (zh) | 2006-01-18 | 2013-05-29 | 艾利森电话股份有限公司 | 集中式和分布式传输 |
US20070206747A1 (en) * | 2006-03-01 | 2007-09-06 | Carol Gruchala | System and method for performing call screening |
WO2007121445A2 (en) * | 2006-04-18 | 2007-10-25 | Securaplane Technologies, Inc. | Battery busing scheme |
WO2007150070A2 (en) * | 2006-06-23 | 2007-12-27 | Securaplane Technologies, Inc. | Wireless electromagnetic parasitic power transfer |
CN101141435B (zh) * | 2006-09-10 | 2010-04-21 | 华为技术有限公司 | 调度系统及其消息处理方法 |
US8238538B2 (en) | 2009-05-28 | 2012-08-07 | Comcast Cable Communications, Llc | Stateful home phone service |
US20110314256A1 (en) * | 2010-06-18 | 2011-12-22 | Microsoft Corporation | Data Parallel Programming Model |
US8589867B2 (en) | 2010-06-18 | 2013-11-19 | Microsoft Corporation | Compiler-generated invocation stubs for data parallel programming model |
WO2012048975A1 (en) * | 2010-10-13 | 2012-04-19 | Telefonaktiebolaget L M Ericsson (Publ) | Determining asymmetries in a communication network |
CN102511135B (zh) * | 2011-02-17 | 2014-12-10 | 华为技术有限公司 | 路径时延差评估器、路径时延差补偿器和相干接收机 |
US9491801B2 (en) | 2012-09-25 | 2016-11-08 | Parallel Wireless, Inc. | Dynamic multi-access wireless network virtualization |
US9600432B2 (en) * | 2014-04-17 | 2017-03-21 | International Business Machines Corporation | Verifying runtime switch-over between multiple I/O protocols on shared I/O connection |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5014266A (en) * | 1988-12-28 | 1991-05-07 | At&T Bell Laboratories | Circuit switching system for interconnecting logical links between packet switching networks |
US5054054A (en) * | 1989-02-07 | 1991-10-01 | International Business Machines Corporation | Voice applications generator |
US5168515A (en) * | 1989-11-27 | 1992-12-01 | Unifi Communications Corporation | Switchless automatic call distribution system |
US5056086A (en) * | 1989-12-21 | 1991-10-08 | Bell Communications Research, Inc. | Apparatus for providing telephonic mass announcement service and methods for use therein |
CA2009034C (en) * | 1990-01-31 | 1995-04-04 | Michael J. Gertsman | Telephone or data switching system with variable protocol inter-office communication |
EP0464015A2 (de) * | 1990-06-27 | 1992-01-02 | Telefonaktiebolaget L M Ericsson | Kommunikationsprotokoll für Vermittlungssysteme |
US5260990A (en) * | 1991-04-30 | 1993-11-09 | Boston Technology, Inc. | Multiple integrations unit for coupling different switching systems to a message storage system |
US5826017A (en) * | 1992-02-10 | 1998-10-20 | Lucent Technologies | Apparatus and method for communicating data between elements of a distributed system using a general protocol |
US5384854A (en) * | 1992-02-14 | 1995-01-24 | Ericsson Ge Mobile Communications Inc. | Co-processor controlled switching apparatus and method for dispatching console |
US5329578A (en) * | 1992-05-26 | 1994-07-12 | Northern Telecom Limited | Personal communication service with mobility manager |
US5440620A (en) * | 1992-08-28 | 1995-08-08 | At&T Corp. | Telecommunications system subscriber profile updating |
US5442689A (en) * | 1993-01-29 | 1995-08-15 | At&T Corp. | Apparatus and method for providing services prior to call completion in a telecommuncation system |
-
1993
- 1993-10-08 US US08/134,122 patent/US5426694A/en not_active Expired - Lifetime
-
1994
- 1994-10-05 RU RU96108957/09A patent/RU2150791C1/ru active
- 1994-10-05 PL PL94316494A patent/PL176468B1/pl unknown
- 1994-10-05 HU HU9600806A patent/HU219692B/hu not_active IP Right Cessation
- 1994-10-05 WO PCT/US1994/011319 patent/WO1995010912A1/en active IP Right Grant
- 1994-10-05 AT AT94930053T patent/ATE211338T1/de not_active IP Right Cessation
- 1994-10-05 JP JP51190095A patent/JP3317405B2/ja not_active Expired - Lifetime
- 1994-10-05 EP EP94930053A patent/EP0724804B1/de not_active Expired - Lifetime
- 1994-10-05 CN CN94194237A patent/CN1104797C/zh not_active Expired - Lifetime
- 1994-10-05 PL PL94329832A patent/PL176976B1/pl unknown
- 1994-10-05 CA CA002173247A patent/CA2173247C/en not_active Expired - Fee Related
- 1994-10-05 AU AU79296/94A patent/AU684318B2/en not_active Ceased
- 1994-10-05 DE DE69429530T patent/DE69429530T2/de not_active Expired - Lifetime
- 1994-10-05 EP EP99103464A patent/EP0946026A3/de not_active Withdrawn
- 1994-10-05 BR BR9407781A patent/BR9407781A/pt not_active IP Right Cessation
- 1994-10-05 EP EP00127785A patent/EP1100240A3/de not_active Withdrawn
- 1994-10-05 NZ NZ274738A patent/NZ274738A/en unknown
-
1995
- 1995-06-07 US US08/482,407 patent/US5546453A/en not_active Expired - Lifetime
-
1996
- 1996-04-02 NO NO961351A patent/NO961351L/no not_active Application Discontinuation
- 1996-04-03 BG BG100473A patent/BG62989B1/bg unknown
- 1996-04-04 FI FI961533A patent/FI961533A0/fi unknown
-
1997
- 1997-08-27 US US08/924,498 patent/US6058181A/en not_active Expired - Lifetime
-
1999
- 1999-12-02 RU RU99126118/09A patent/RU99126118A/ru not_active Application Discontinuation
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69429530T2 (de) | Fernmeldevermittlung mit programmierbaren netzprotokollen und fernmeldediensten | |
DE69313666T2 (de) | Fernmeldevermittlungseinrichtung mit programmierbaren Fernmeldediensten, und entsprechende Vorrichtung | |
DE69623931T2 (de) | Fernmeldevermittlungssystem mit einer universalen applikationsprogrammschnittstelle für standardisierte interaktive anrufverarbeitungsnachrichten | |
DE69314353T2 (de) | Diensteinrichtung | |
DE69838996T2 (de) | Verfahren und Vorrichtung zur zentralisierten Anrufverarbeitung | |
DE3903257C2 (de) | ||
DE69232656T2 (de) | Automatische Initialisierung von einem verteilten Telekommunikationssystem | |
DE69316987T2 (de) | Programmierbarer fernmedevorrichtung für pc | |
DE69835412T2 (de) | Architektur eines Kommunikationssystems sowie entsprechendes Betriebsprotokoll | |
EP1250818A1 (de) | Verfahren zur anbindung von einheiten mit genormten schnittstellen an einrichtungen eines vermittlungssystems | |
DE19919976B4 (de) | Verfahren und Vorrichtung zum Übertragen eines eingebetteten Nebenstellensystems auf einen Personalcomputer | |
DE19937098A1 (de) | Intelligente Zuweisung der Bandbreite für mehrere unabhängige Verbindungen auf einem digitalen Netzwerk | |
DE60127396T2 (de) | Verfahren und gateway für das online-austauschen von software in einem kommunikationssystem | |
EP0306693B1 (de) | Modular strukturiertes digitales Kommunikationssystem | |
DE69832499T2 (de) | Unterraten-fernmeldevermittlungsanlage | |
DE69712220T2 (de) | Signalisierungsnachrichtenverarbeitungsanlage in einem datenvermittlungsnetz | |
EP0734186B1 (de) | Verfahren zum Steuern eines Zugangsnetzes sowie Zugangsnetze und Vermittlungsstelle dafür | |
DE69910570T2 (de) | Programmierung von anrufverarbeitungsanwendungen in einem vermittlungssystem | |
EP0529343B1 (de) | Verfahren zur Herstellung einer Verbindung zwischen einem an eine Kommunikationsanlage angeschlossenen Kommunikationsendegerät mit einer Mehrzahl von weiteren Geräten | |
DE60108124T2 (de) | Entwicklungsumgebung mit mehreren kanälen und diensten | |
EP0720399B1 (de) | Verfahren zur Steuerung der Betriebsweise von einem programmgesteuerten Kommunikationssystem zugeordneten Mobilendgeräten | |
EP1161843B1 (de) | Bereitstellung zusätzlicher dienste durch ausführung einer anwendung des "supplementary services layer" ssl in einem schaltungsknoten eines erweiterbaren fernmeldesystems | |
EP1285543B1 (de) | Vorrichtung zum optimieren von peripheren einrichtungen eines kommunikationssystems | |
EP0535601B1 (de) | Verfahren zur Herstellung von Konferenzverbindungen in einer rechnergesteuerten Kommunikationsanlage | |
EP1104205A1 (de) | Verfahren zur optimierten Verarbeitung von ausserhalb einer Vermittlungsstelle geführten Verbindungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |