COMMON-ISDN-API Einheitliche Schnittstelle zwischen Applikationsprogrammen und ISDN-Adaptern Spezifikation Version 1.1, Profil A Editorisches Datum: 07.09.90 COMMON-ISDN-API Inhaltsverzeichnis 1. Einleitung .....................................1 2. Leistungsmerkmale ..............................1 3. berblick ......................................2 3.1 Message-Queues .................................3 3.2 Operationen auf Message-Queues .................4 3.2.1 Registrierung einer Applikation ................5 3.2.2 Messages der Applikation an das COMMON-ISDN-API 5 3.2.3 Messages des COMMON-ISDN-API an die Applikation 5 3.2.4 Abmeldung einer Applikation ....................5 3.3 Allgemeines Message-Protokoll ..................6 3.4 Aufbau der Messages ............................6 3.5 Aufbau des Datenbereichs .......................7 3.6 Sonstige Funktionen ............................8 3.7 Herstellerspezifische Erweiterungen ............8 4. Messages und Funktionen ........................9 4.1 Operationen auf Messages-Queues ................9 4.2 Messages .......................................9 4.3 Sonstige Operationen ..........................10 5. Beschreibung der Messages .....................11 5.1 Allgemeine Messages ...........................13 5.2 Protokollebene 2 ..............................38 5.3 Protokollebene 3 ..............................41 5.4 Telefondienst .................................66 5.5 Herstellerspezifische Messages ................68 5.6 Sonstige Funktionen ...........................72 5.6.1 Herstelleridentifikation ......................72 5.6.2 Versionsnummer des COMMON-ISDN-API ............72 5.6.3 Seriennummer des COMMON-ISDN-API ..............72 6. Ablaufdiagramme ...............................73 Anhang A - Implementierung unter verschiedenen Betriebssystemen Anhang B - Profil 1. Einleitung Das COMMON-ISDN-API erlaubt den einfachen Zugriff von Anwendungen auf ISDN-Adapterboards und ermglicht die uneingeschrnkte Nutzung ihrer Funktionalitt durch ein standardisiertes Software-Interface. - 1 - COMMON-ISDN-API Anwendungen, die dieses Interface benutzen, sind bei zuknftigen Erweiterungen oder Hardwarenderungen nicht betroffen. Das COMMON-ISDN-API macht die nderungen transparent zur Benutzeranwendung. Zuknftige Erweite- rungen sind unter Erhaltung der Kompatibilitt zur vor- handenen Softwarebasis mglich. Damit wird es mglich, hhere Protokolle und spezifi- sche ISDN-Applikationen ber eine definierte, einheitli- che Schnittstelle, die von verschiedenen Herstellern von ISDN-Adaptern untersttzt wird, an das ISDN anzubinden. Das COMMON-ISDN-API bildet die Grundlage fr die modula- re Entwicklung von Applikationen in ISDN-Systemen. 2. Leistungsmerkmale Mit dem COMMON-ISDN-API wird eine Anzahl von wichtigen Leistungsmerkmalen abgedeckt. 1. Untersttzung der Basic-Call-Merkmale wie z.B. Verbindungsauf- und -abbau und Anzeige der ISDN- Nummer des Anrufers 2. Untersttzung mehrerer B-Kanle fr Sprach- und/oder Datenverbindungen 3. Untersttzung mehrerer logischer Kanle fr Da- tenverbindungen innerhalb einer physikalischen Verbindung 4. Selektionsmglichkeit fr verschiedene Dienste und Protokolle beim Verbindungsaufbau und ein- kommenden Ruf 5. transparente Schnittstelle fr Protokolle ober- halb der Schicht 3 6. Untersttzung eines oder mehrerer So-Bus- Anschlsse auf einem oder mehreren ISDN-Adaptern 7. betriebssystemneutraler Ansatz fr verschiedene Betriebssysteme 8. asynchroner Mechanismus (hoher Durchsatz) 9. definierter Mechanismus fr herstellerspezifi- sche Erweiterungen 10. einfache Realisierung in Minimalkonfiguration mit einem untersttzten ISDN-Controller 3. berblick Das COMMON-ISDN-API stellt von seiner logischen Sicht- weise her die Verbindung zwischen beliebig vielen Anwen- dungsprogrammen (Applikationen) und ebenfalls beliebig - 2 - COMMON-ISDN-API vielen ISDN-Treibern und ISDN-Controllern ber eine ein- heitliche Schnittstelle zur Verfgung. Dabei ist die Zu- ordnung von Applikationen zu Treibern und Controllern frei whlbar. Sowohl die Nutzung einer Applikation fr mehrere Treiber und Controller als auch die von ver- schiedenen Applikationen auf einzelnen Treibern kann ber das COMMON-ISDN-API realisiert werden. Die Anwendungen knnen dabei unterschiedliche Proto- kolle auf verschiedenen Protokollebenen nutzen. Der da- fr ntige Selektionsmechanismus wird durch das COMMON- ISDN-API zur Verfgung gestellt. Das COMMON-ISDN-API ab- strahiert weiterhin von unterschiedlichen Protokollvari- anten und schafft somit einen einheitlichen Netzwerkzu- gang. Das Grundkonzept ist fr nationale und internatio- nale Varianten anpabar. Durch die Angabe des Profils (Profil A siehe Anhang) erfolgt die Festlegung der Re- prsentation einzelner Datenelemente des Signalisie- rungskanals. Alle applikationsrelevanten Informationen der Verbin- dung wie Gebhreninformation, Display-Messages usw. ste- hen jederzeit zur Verfgung. Zeichnung 1: Lage des COMMON-ISDN-API im ISO/OSI- Referenzmodell Anm.: Fr die Spezifikation der Zeichnungen fordern Sie bitte die schriftliche Ausfhrung der Spezi- fikation COMMON-ISDN-API an. (siehe Impressum) Das COMMON-ISDN-API ist eine Instanz. Mit der vorlie- genden Spezifikation wird sowohl die Instanz als auch das Protokoll zwischen einer Applikation und dem COMMON- ISDN-API definiert und vereinheitlicht. Das Protokoll zwischen dem COMMON-ISDN-API und den untersttzenden Treibern ist herstellerspezifisch. - 3 - COMMON-ISDN-API Das COMMON-ISDN-API deckt fr den B-Kanal die Proto- kollebenen 1 bis 3 (physikalische Schicht, Datensiche- rungsschicht, Netzwerkschicht) ab. Die Schnittstelle des COMMON-ISDN-API liegt oberhalb der Ebene 3 und bietet damit den Aufsatzpunkt fr Anwendungen und hhere Proto- kolle. Verbindlich vorgegeben sind fr die Schicht 2 das X.75-Protokoll gem T.90 und fr die Schicht 3 die Realisierung gem T.70 NL. Als Optionen sind die trans- parente Schicht 2 sowie der separate Zugriff auf die Protokolle T.90 mit LLC-Mechanismus, ISO 8208 und Trans- parent auf der Ebene 3 sowie die Untersttzung des Tele- fondienstes definiert. In der folgenden Beschreibung wird zunchst der ver- wendete Grundmechanismus des COMMON-ISDN-API vorge- stellt. Grundlage sind dabei die fr den Austausch von Kommandos und Daten vorgesehenen Message-Queues. Nach der Beschreibung der Operationen auf diesen Message- Queues wird der Aufbau der ausgetauschten Messages dar- gestellt. Anschlieend erfolgt eine Beschreibung weite- rer Funktionen zur Identifikation und eine Erluterung des Mechanismus fr herstellerspezifische Erweiterungen. 3.1 Message-Queues Die Kommunikation zwischen einem Anwendungsprogramm und dem COMMON-ISDN-API erfolgt ber Message-Queues. Da- bei existiert, wie Zeichnung 2 zeigt, fr das COMMON- ISDN-API selbst sowie fr jedes registrierte Anwendungs- programm genau eine Message-Queue. ber diese Message- Queues werden Messages zwischen den Anwendungsprogrammen und dem COMMON-ISDN-API ausgetauscht. Fr den hochvolu- migen Datentransfer werden die Messages nur zur Indika- tion genutzt. Der Transfer der Daten erfolgt ber einen gemeinsamen Datenbereich der Applikation und des COMMON- ISDN-API. Eine Ausnahme bildet der Datentransfer im D- Kanal mit Hilfe der User-Informationen. Hier sind die Daten unmittelbar mit der entsprechenden Message verbun- den. Das COMMON-ISDN-API selbst sowie die untersttzten Treiber sorgen fr die Abarbeitung der Messages in der Reihenfolge ihres Eintreffens. Eine Applikation setzt Kommandos an einen ISDN-Treiber bzw. -Controller ab, indem sie eine entsprechende Messa- ge in der Message-Queue des COMMON-ISDN-API ablegt. Um- gekehrt wird eine Meldung eines ISDN-Treibers bzw. - Controllers in die Message-Queue der dadurch angespro- chenen Applikation bermittelt. Dieses Verfahren ermglicht den flexiblen Zugriff meh- rerer Applikationen auf verschiedene ISDN-Treiber und - Controller, wie er insbesondere im Bereich der hheren Protokolle und der multifunktionalen Systeme benutzt - 4 - COMMON-ISDN-API wird. Weiterhin ist damit ein leistungsfhiger Mechanis- mus fr die Verarbeitung asynchron eintreffender Ereig- nisse realisiert. Die Struktur der Message-Queue wird nicht spezifi- ziert; sie ist herstellerabhngig und fr das Anwen- dungsprogramm transparent. Die ntigen Zugriffsoperatio- nen werden durch das COMMON-ISDN-API festgelegt. Der fr die Message-Queue und die Empfangsdaten einer Applika- tion ntige Speicher wird von der Applikation zur Verf- gung gestellt. Zeichnung 2: Message-Queues im COMMON-ISDN-API Anm.: Fr die Spezifikation der Zeichnungen fordern Sie bitte die schriftliche Ausfhrung der Spezi- fikation COMMON-ISDN-API an. (siehe Impressum) 3.2 Operationen auf Message-Queues Die beschriebenen Message-Queues stellen das Binde- glied zwischen einer Applikation und dem COMMON-ISDN-API sowie den angeschlossenen ISDN-Treibern und -Controllern dar. Fr die Nutzung der Message-Queues sind lediglich vier Operationen ntig. Die Operationen auf diesen Message-Queues sind betriebssystemunabhngig spezifi- ziert. Ihre jeweilige Ausprgung und Realisierung ist betriebssystemspezifisch. Diese Operationen bilden - 5 - COMMON-ISDN-API gleichzeitig die vollstndige Schnittstelle, die an das jeweilige Betriebssystem angepat werden mu. Im folgen- den werden die vier ntigen Operationen beschrieben. - 6 - COMMON-ISDN-API 3.2.1 Registrierung einer Applikation Bevor eine Applikation Kommandos an das COMMON-ISDN- API absetzen kann, mu eine Anmeldung der Applikation beim COMMON-ISDN-API erfolgen. Dazu steht die Funktion API_REGISTER zur Verfgung. Mit dieser Funktion weist das COMMON-ISDN-API der Applikation eine systemweit ein- deutige Applikationsnummer (APPL-ID) zu. Systemweit be- deutet in diesem Zusammenhang keine Eindeutigkeit in ei- nem Netzwerk. Gleichzeitig wird die Message-Queue fr die Applikation eingerichtet. Die Applikation stellt dem COMMON-ISDN-API den dafr notwendigen Speicherbereich zur Verfgung. 3.2.2 Messages der Applikation an das COMMON-ISDN-API Alle Messages einer Applikation an das COMMON-ISDN-API werden in der Message-Queue des COMMON-ISDN-API abge- legt. Dazu steht die Operation API_PUT_MESSAGE zur Ver- fgung. Die Applikation bergibt dabei die zu transfe- rierende Message. Die Operation API_PUT_MESSAGE liefert fr den Fall, da die Message-Queue des COMMON-ISDN-API keine weiteren Messages aufnehmen kann, einen Fehler- wert. 3.2.3 Messages des COMMON-ISDN-API an die Applikation Das COMMON-ISDN-API verwaltet fr jede Applikation eine Message-Queue, in die das COMMON-ISDN-API bzw. der ISDN-Treiber und -Controller alle Messages an die Appli- kation ablegt. Zum Erhalt der neuen Messages steht die Operation API_GET_MESSAGE zur Verfgung. Diese Operation liefert dabei die empfangene Message zurck. Falls die Applikation die Messages nicht schnell genug ausliest, kann es zu einem Queueberlauf kommen. In diesem Fall gehen die nachfolgenden Messages des COMMON-ISDN-API verloren. Die Applikation wird bei der nchsten API_GET_MESSAGE-Operation ber diesen Fehlerfall infor- miert. 3.2.4 Abmeldung einer Applikation Eine Applikation mu sich nach erfolgter Anmeldung in jedem Fall wieder beim COMMON-ISDN-API abmelden. Die Ab- meldung kann jederzeit mit der Operation API_RELEASE er- folgen. Dabei ist zu beachten, da die Applikation alle bestehenden Verbindungen lsen mu. Durch die Abmeldung wird die vorher belegte Message-Queue frei. - 7 - COMMON-ISDN-API 3.3 Allgemeines Message-Protokoll Die Kommunikation zwischen der Applikation und dem COMMON-ISDN-API verwendet immer folgendes allgemeines Protokoll: Jede Message ist mit einer Messagenumber versehen, wo- bei abhngig vom Initiator zwei getrennte Nummernkreise verwaltet werden. Der Nummernkreis der Applikation luft zwischen 0x0000 und 0x7FFF, der Nummernkreis des COMMON- ISDN-API zwischen 0x8000 und 0xFFFF. Die Applikation sendet einen Request (_REQ) an das COMMON-ISDN-API. Dabei wird eine Messagenumber aus dem Nummernkreis der Applikation verwendet. Diesen Request besttigt das COMMON-ISDN-API mit einer korrespondieren- den Confirmation (_CONF). Dabei wird die gleiche Messa- genumber wie in dem Request verwendet. Ein asynchrones Ereignis wird der Applikation durch eine Indication (_IND) angezeigt. Dabei wird eine Messa- genumber aus dem Nummernkreis des COMMON-ISDN-API ver- wendet. Die Indication wird von der Applikation mit der korrespondierenden Response (_RESP) beantwortet. Dabei verwendet die Applikation die gleiche Messagenumber wie in der Indication. Protokollverletzungen der Anwendung, die nicht ange- zeigt werden knnen, werden ignoriert. 3.4 Aufbau der Messages Alle Messages, die zwischen der Applikation und dem COMMON-ISDN-API ausgetauscht werden, bestehen aus einem Header fester Lnge und einem Datenbereich variabler Lnge. Das vorgegebene Format wird dabei fr beide Richtungen des Transfers verwendet. Die Daten werden in den Messages byteweise gepackt. Ŀ Message- Message- Message- Message- Header Daten Daten Daten Zeichnung 3: Aufbau einer Message Der Messageheader hat folgenden Aufbau: Ŀ Total APPL-ID Command Sub- Message- Length command number Zeichnung 4: Aufbau des Messageheaders - 8 - COMMON-ISDN-API Dabei bedeuten: Total Length word, Gesamtlnge der Message einschlielich Header in Bytes APPL-ID word, Identifikation der Applika- tion. Hier wird die APPL-ID ver- wendet, die das COMMON-ISDN-API der Applikation bei der Operation API_REGISTER zugewiesen hat. Command byte, Command Subcommand byte, Unterteilung des Commands Messagenumber word, eindeutige Numerierung al- ler Messages (siehe auch 3.3). 3.5 Aufbau des Datenbereichs Der Datenbereich besteht aus keinem, einem oder mehre- ren Parametern. Beim Aufbau der einzelnen Parameter wird zwischen Typen variabler und fester Lnge unterschieden. Somit existieren: fr den Typ STRUCT mit variabler Lnge Ŀ Parameter- Parameter- length data Zeichnung 5: Parameterkodierung variabler Lnge Dabei bedeuten: Parameterlength byte, Gre des Datenbereichs in bytes Parameterdata byte(s), Datenbereich und fr die Basistypen BYTE, WORD und DWORD mit fester Lnge Ŀ Parameter- data Zeichnung 6: Parameterkodierung der Basistypen Die Anordnung der Basisdatentypen im Speicher ist im Anhang beschrieben. Die Anzahl der in einer Message bertragenen Parameter sowie deren Datentypen ist implizit durch die jeweilige Message festgelegt. Die maximale Lnge einer Message be- trgt 180 Bytes. 3.6 Sonstige Funktionen - 9 - COMMON-ISDN-API Weiterhin stehen diverse Zusatzfunktionen wie Herstel- leridentifikation, Versionsnummernermittlung sowie ein Serialisierungsverfahren zur Verfgung. Da es sich um eine lokale Funktion des COMMON-ISDN-API handelt, er- folgt der Aufruf wie unter Message-Queues unter MS-DOS (s.u.) beschrieben. 3.7 Herstellerspezifische Erweiterungen Herstellerspezifische Erweiterungen des hier vorge- stellten COMMON-ISDN-API sind ohne nderungen der Grund- struktur mglich. Sie werden durch ein entsprechendes Command-/Subcommand-Feld in der Message gekennzeichnet. - 10 - COMMON-ISDN-API 4. Messages und Funktionen 4.1 Operationen auf Message-Queues API_REGISTER - Registrierung einer Applika- tion API_RELEASE - Abmelden einer Applikation API_PUT_MESSAGE - Message an das API bergeben API_GET_MESSAGE - Message vom API holen 4.2 Messages CONNECT_REQ - Aufbau der B-Kanal-Verbindung CONNECT_IND - Anzeige eines Rufes auf dem B-Kanal CONNECT_INFO_REQ - Senden weiterer Wahlinformationen CONNECT_ACTIVE_IND - Anzeige, B-Kanal durchgeschaltet DISCONNECT_REQ - Abbau der B-Kanal-Verbindung DISCONNECT_IND - Anzeige eines Abbaus auf dem B-Kanal LISTEN_REQ - Einstellung der bearbeiteten Service GET_PARAMS_REQ - Anforderung der Parameter des B-Kanals INFO_REQ - Einstellung der zu meldenden Informationen INFO_IND - Meldung von Ereignissen des B-Kanals DATA_REQ - Senden von Daten im D-Kanal DATA_IND - Empfang von Daten im D-Kanal SELECT_B2_PROTOCOL_REQ - Auswahl des Ebene 2-Protokolls SELECT_B3_PROTOCOL_REQ - Auswahl des Ebene 3-Protokolls LISTEN_B3_REQ - Einstellung der Bearbeitung Ebene 3 CONNECT_B3_REQ - Aufbau der Ebene 3-Verbindung CONNECT_B3_IND - Anzeige einer Ebene 3-Verbindung CONNECT_B3_ACTIVE_IND - Anzeige, Ebene 3 durchgeschaltet DISCONNECT_B3_REQ - Abbau einer Ebene 3-Verbindung DISCONNECT_B3_IND - Anzeige des Abbaus einer Ebene 3 GET_B3_PARAMS_REQ - Anforderung der Ebene 3-Parameter DATA_B3_REQ - Senden von Daten der Ebene 3 DATA_B3_IND - Anzeige von einkommenden Daten RESET_B3_REQ - Zurcksetzen einer Verbindung RESET_B3_IND - Anzeige, Verbindung zurckgesetzt HANDSET_IND - Meldungen von Ereignissen des Handsets MANUFACTURER_REQ - Herstellerspezifische Anfrage MANUFACTURER_IND - Herstellerspezifische Anzeige - 11 - COMMON-ISDN-API Die Liste 4.2 enthlt nur die Messages, die durch den Initiator ab- gesetzt werden. Die korrespondierenden Confirmations und Responses sind in dieser Liste nicht gesondert aufgefhrt. 4.3 Sonstige Operationen API_SET_SIGNAL - Signalisierungsfunktion einstellen API_DEINSTALL - Entfernen des COMMON-ISDN-API API_GET_MANUFACTURER - Herstelleridentifikation holen API_GET_VERSION - Versionsnummer des API holen API_GET_SERIAL_NUMBER - (optionale) Seriennummer holen API_MANUFACTURER - Herstellerspezische Funktion - 12 - COMMON-ISDN-API 5. Beschreibung der Messages Im folgenden werden die zwischen der Applikation und dem COMMON-ISDN-API ausgetauschten Messages beschrieben. Dabei sind folgende Typen zugrundegelegt, die in das vorgegebene Message- Format umgesetzt werden: Typendefinition: byte := 8-Bit-Parameter, vorzeichenlos. Die Rei- henfolge der Bits ist in Anhang A be- schrieben. word := 16-Bit-Parameter, vorzeichenlos. Die Rei- henfolge der Bits ist in Anhang A be- schrieben. dword := 32-Bit-Parameter, vorzeichenlos. Die Rei- henfolge der Bits ist in Anhang A be- schrieben. struct := Struktur (Feld) mit variabler Lnge. Das erste Byte des Feldes gibt die Lnge des Feldes an (vgl. Aufbau des Datenberei- ches). Reserved Bits in Bitfeldern mssen mit 0 belegt werden Notation Hexadezimale Zahlenangaben: Hexadezimalzahlen werden in der ge- bruchlichen Notation der Programmiersprache 'C' in der Form 0xhh (fr Bytes) bzw. 0xhhhh (fr Words) angegeben. Binre Zahlenangaben: Binre Zahlenangaben erfolgen in der Form eines Bitfeldes, gefolgt von einem 'b'. Das niederwertigste Bit wird rechts angegeben. Beispiel: 00110010b (binr) entspricht 0x32 (hexadezimal) ent- spricht 50 (dezimal). - 11 - COMMON-ISDN-API Verwendete Abkrzungen Applikations-ID: Rechnersystemweit eindeutige Identifika- tion einer Applikation gegenber dem COMMON-ISDN-API. Controller: Ein Controller ist eine Hardwareeinheit, die einen Zugang zum ISDN-Netz ermglicht. Ein solcher Controller untersttzt keinen, einen oder mehrere Daten- und/oder Tele- fonverbindungen. Die Controller werden, bei 0 beginnend, aufsteigend durchnumme- riert. DLPD Data-Link-Protocol-Description. Struktur mit protokollabhngigen Zusatzinformatio- nen. ff: fortlaufend folgende ffs: for further study NCCI: Network-Control-Connection-Identifier. Ein NCCI beschreibt eine logische Verbindung auf Ebene 3. Wenn die Realisierung des COMMON-ISDN-API entsprechende Protokolle anbietet, kann durch Protokollselektion eine gemultiplexte Ebene 3 gewhlt werden. So knnen mehrere NCCI existieren, die auf dem selben PLCI arbeiten. NCPD Network-Control-Protocol-Description. Struktur mit protokollabhngigen Zusatzin- formationen. NCPI: Network-Control-Protocol-Information, pro- tokollabhngige Zusatzinformationen einer Netzwerkverbindung PLCI: Physical-Link-Connection-Identifier. Ein PLCI beschreibt eine physikalische Verbin- dung zwischen zwei Teilnehmern. Er wird bei der Einleitung des Verbindungsaufbaus vom COMMON-ISDN-API geliefert. Ein PLCI beschreibt zunchst eine Signalisierungs- verbindung. Nach der Aktivschaltung wird dem Signalisierungskanal eine physikali- sche Verbindung zugeordnet. Ein PLCI ist immer an einen Controller und ein Anwen- dungsprogramm gebunden. - 12 - COMMON-ISDN-API 5.1 Allgemeine Messages CONNECT_REQ - Aufbau der B-Kanal-Verbindung Beschreibung Mit dieser Message wird der Aufbau einer physikalischen B- Kanal-Verbindung zu der angegebenen Zieladresse (Destination- Address entsprechend Profil A) eingeleitet. ber den Parameter B- Channel (Kodierung entsprechend Profil A) kann der gewnschte B- Kanal vorgegeben werden. Mit der Info-Mask wird angegeben, welche W-Elemente ber die Message INFO_IND angezeigt werden sollen. Mit dem Parameter Source-EAZ (EAZ entsprechend Profil A) wird die EAZ des Initiators angegeben. Die Parameter Outgoing-Service und Outgoing-Servive-Add geben den zu verwendenden Dienst entsprechend Profil A an. Message Command/Subcommand: 0x02 / 0x00 byte Controller byte B-Channel dword Info-Mask byte Outgoing-Service byte Outgoing-Service-Add. byte Source-EAZ struct Destination-Address Parameter Controller transparent (in Applikation ein- stellbar) B-Channel Bitfeld, Channel-Identification gem Profil A Info-Mask Bitfeld mit der Kodierung: [0] Charging-Information [1] Date [2] Display [3] User-User-Information [4] Cause [5] Status des gerufenen Tln [6..31] reserved Outgoing-Service Service-Indicator gem Profil A Outgoing-Service-Add Additional-Info entspr. Profil A Source-EAZ EAZ gem Profil A Destination-Address Destination-Address gem Profil A Hinweis Mit dem Bitfeld Info-Mask wird angegeben, welche W-Elemente beim Empfang das Auslsen einer INFO_IND auslsen sollen. - 13 - COMMON-ISDN-API CONNECT_CONF Beschreibung Mit dieser Message wird die Einleitung des Verbindungsaufbaus besttigt. Damit wird dieser Verbindung ein PLCI zugeteilt, ber den sie im weiteren identifiziert wird. Eventuelle Fehler werden im Parameter Info zurckgeliefert. Message Command/Subcommand: 0x02 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent Info 0: Connect eingeleitet 0x2001 Falscher Controller 0x3101 B-Channel falsch kodiert 0x3102 Info-Mask falsch kodiert Hinweis Die Verbindung ist zu diesem Zeitpunkt in der Aufbauphase. Eine sptere Durchschaltung wird durch die Message CON- NECT_ACTIVE_IND angezeigt. - 14 - COMMON-ISDN-API CONNECT_IND - Anzeige eines einkommenden Rufes auf dem B- Kanal Beschreibung Mit dieser Message wird der Verbindungsaufbauwunsch einer Gegenstelle angezeigt. Zu dem Zeitpunkt dieser Message bef- indet sich die Verbindung in der Aufbauphase, eine physika- lische Verbindung steht noch nicht zur Verfgung. Eine sp- tere Durchschaltung des B-Kanals wird ber die Message CON- NECT_ACTIVE_IND, die Durchschaltung der Ebene 3 ber die Message CONNECT_B3_ACTIVE_IND angezeigt. Fr den einkommenden Ruf wird ein PLCI vergeben, ber den dieser Ruf im weiteren identifiziert und angesprochen werden kann. Die Adressen sowie der verlangte Service werden ber die Parameter Caller-Address, Requested-EAZ, Requested- Service, und Requested-Service-Add (Kodierung gem Profil A) angezeigt. Message Command/Subcommand: 0x02 / 0x02 word PLCI byte Controller byte Requested-Service byte Requested-Service-Add byte Requested EAZ struct Caller-Address Parameter PLCI Physical-Link-Connection-Identifier, transparent Controller transparent Requested-Service Service-Indicator entspr. Profil A Requested-Service-A. Additional-Info entspr. Profil A Requested-EAZ EAZ gem Profil A Caller-Address Caller-Address gem Profil A Hinweis Um die Meldung von eingehenden Rufen zu aktivieren, mu fr jeden zu verwendenden Controller vorher die Message LI- STEN_REQ abgesetzt werden. - 15 - COMMON-ISDN-API CONNECT_RESP Beschreibung Mit dieser Message wird ein einkommender Ruf von der An- wendung angenommen oder abgelehnt. Der einkommende Ruf wird ber den Parameter PLCI identifiziert. ber den Parameter Reject kann der Ruf angenommen oder abgelehnt werden. Ein Wert ungleich 0 wird als Cause entsprechend Profil A behan- delt. Message Command/Subcommand: 0x02 / 0x03 word PLCI byte Reject Parameter PLCI Physical-Link-Connection-Identifier, transparent Reject 0: Accept Call <>0: Reject Call, Wert reserved (Cause) - 16 - COMMON-ISDN-API CONNECT_INFO_REQ - Senden weiterer Wahlinformationen Beschreibung Mit dieser Message wird Overlap-Sending ermglicht. Diese Message kann folgend auf ein CONNECT_REQ bis zur Anzeige der abschlieenden Message CONNECT_ACTIVE_IND mehrfach benutzt werden. Message Command/Subcommand: 0x09 / 0x00 word PLCI struct Destination-Address Parameter PLCI Physical-Link-Connection-Identifier, transparent Destination-Adress Destination-Address gem Profil A Hinweis Bei den Diensten Teletext und Telefax darf diese Message nicht benutzt werden, da fr diese Dienste Blockwahl vorge- schrieben ist. - 17 - COMMON-ISDN-API CONNECT_INFO_CONF Beschreibung Mit dieser Message wird die Annahme des CONNECT_INFO_REQ besttigt. Message Command/Subcommand: 0x09 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent Info 0: Senden der Wahlinformation eingeleitet 0x2002 Falscher PLCI - 18 - COMMON-ISDN-API CONNECT_ACTIVE_IND - Anzeige, B-Kanal durchgeschaltet Beschreibung ber diese Message wird die Durchschaltung eines B-Kanals angezeigt. Damit ist die Verbindung, die ber den PLCI iden- tifiziert wird, korrekt aufgebaut. In dem Parameter Connected-Address wird die Adresse der Gegenstelle mitge- teilt. Message Command/Subcommand: 0x03 / 0x02 word PLCI struct Connected-Address Parameter PLCI Physical-Link-Connection-Identifier, transparent Connected-Address Connected-Address gem Profil A - 19 - COMMON-ISDN-API CONNECT_ACTIVE_RESP Beschreibung Mit dieser Message besttigt die Anwendung die Kenntnis- nahme ber die Durchschaltung eines B-Kanals. Message Command/Subcommand: 0x03 / 0x03 word PLCI Parameter PLCI Physical-Link-Connection-Identifier, transparent Hinweis Diese Message hat keine Funktionalitt. - 20 - COMMON-ISDN-API DISCONNECT_REQ - Abbau der B-Kanal-Verbindung Beschreibung ber diese Message wird der Verbindungsabbau eines B- Kanals eingeleitet. Der B-Kanal wird ber den angegebenen PLCI identifiziert. ber den Parameter Cause kann ein Abbau- grund (Kodierung entsprechend Profil A) angegeben werden. Message Command/Subcommand: 0x04 / 0x00 word PLCI byte Cause Parameter PLCI Physical-Link-Connection-Identifier, transparent Cause Cause gem Profil A (user to network) Hinweis Falls zu diesem Zeitpunkt Ebene 3-Verbindungen auf dem an- gesprochenen B-Kanal existieren, wird zunchst der Abbau al- ler auf diesem B-Kanal aufgebauten Ebene 3 Verbindungen ber entsprechende B3_DISCONNECT_IND angezeigt. Danach beginnt der Abbau des B-Kanals. - 21 - COMMON-ISDN-API DISCONNECT_CONF Beschreibung Mit dieser Message wird die Einleitung eines B-Kanal- Abbaus besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x04 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent Info 0: Disconnect eingeleitet 0x2002 Falscher PLCI - 22 - COMMON-ISDN-API DISCONNECT_IND - Anzeige eines Abbaus auf dem B-Kanal Beschreibung ber diese Message wird der Abbau des B-Kanals angezeigt. Der B-Kanal wird ber den angegebenen PLCI identifiziert. ber den Parameter Info wird ein Grund mitgeteilt. Message Command/Subcommand: 0x04 / 0x02 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier Info 0x3301 Fehler beim Aufbau D- Kanal Ebene 1 0x3302 Fehler beim Aufbau D- Kanal Ebene 2 0x3305 Abbruch D-Kanal Ebene 1 0x3306 Abbruch D-Kanal Ebene 2 0x3307 Abbruch D-Kanal Ebene 3 0x34xx Abbau durch das Netz- werk. In xx ist der Cause gem Profil A kodiert. - 23 - COMMON-ISDN-API DISCONNECT_RESP Beschreibung Mit dieser Message besttigt die Anwendung den Abbau des B-Kanals. Message Command/Subcommand: 0x04 / 0x03 word PLCI Parameter PLCI Physical-Link-Connection- Identifier, transparent Hinweis Mit dieser Message wird der PLCI freigegeben. - 24 - COMMON-ISDN-API LISTEN_REQ - Einstellung der Services Beschreibung In der Voreinstellung werden eingehende Rufe einer An- wendung nicht mitgeteilt. ber die Message LISTEN_REQ kann gewhlt werden, welche einkommenden Rufe der Anwen- dung ber die Message CONNECT_IND angezeigt werden sol- len. Die Auswahl erfolgt nach zwei Kriterien. ber den Pa- rameter Serviced-EAZ-Mask kann die Anwendung whlen, welche EAZ(s) bearbeitet werden sollen. Dabei ist sowohl die Reaktion auf genau eine, auf mehrere als auch auf alle EAZs mglich. ber den Parameter Serviced-SI-Mask kann die Anwendung whlen, welche ber die zugehrigen Service-Indikatoren identifizierten Dienste bearbeitet werden sollen. Fr die Behandlung von eingehenden Rufen erfolgt die Voreinstellung der zu meldenden W-Elemente ber die Info-Mask. Die Voreinstellung gilt fr alle ber den an- gegebenen Controller eingehenden Rufe. Die Message LISTEN_REQ kann beliebig hufig verwendet werden. Fr jede Applikation gilt jeweils die letzte Einstellung. Sollen eingehende Rufe nicht gemeldet wer- den, mssen die Parameter Serviced-EAZ-Mask und Serviced-SI-Mask auf 0 gesetzt werden. Message Command/Subcommand: 0x05 / 0x00 byte Controller dword Info-Mask word Serviced EAZ-Mask word Serviced SI-Mask Parameter Controller transparent (in Applikation ein- stellbar) Info-Mask Bitfeld, Kodierung wie folgt: [0] Charging-Information [1] Date [2] Display [3] User-User-Information [4] Cause [5] Status des gerufenen Tln [6..31] reserved Serviced EAZ-Mask Bitfeld [0..9] zur Indikation, welche EAZs bedient werden kn- nen, wobei die Bitnummer mit der entsprechenden EAZ korrespon- diert. Bitnummer 0 ist fr den Global- Call vorgesehen. Von einer Appli- - 25 - COMMON-ISDN-API kation knnen mehrere EAZs be- dient werden. Fr den Parameter Serviced EAZ-Mask sind folgende Kodierungen vorgesehen: Reaktion nur auf Global-Call 0000000001b Reaktion nur auf genau eine EAZ 0000000010b bis 1000000000b Reaktion auf Global-Call und ge- nau eine EAZ 0000000011b bis 1000000001b Reaktion auf Global-Call und alle EAZs 1111111111b Serviced SI-Mask Bitfeld [0..15] zur Indikation, welche Dienste bedient werden knnen. Eine Applikation kann mehrere Dienste bedienen. Die Bitnummern sind wie folgt ko- diert: [0] Bildtelefon [1] Fernsprechen [2] a/b-Dienste [3] X.21-Dienste [4] Telefax (Gruppe 4) [5] Bildschirmtext (64 kbits/s) [6] - [7] Datenbertragung (64 kbits/s) [8] X.25-Dienste [9] Teletex 64 [10] Mixed Mode [11] - [12] - [13] Fernwirken [14] Grafiktelefondienst [15] Bildschirmtext (neuer Standard) Das Additional Byte des Service- Indikators (siehe Profil A) wird nicht ausgewertet und transparent an die Applikation weiterge- reicht. Hinweis Mit dem Bitfeld Info-Mask wird angegeben, welche W- Elemente beim Empfang das Auslsen einer INFO_IND bewir- ken sollen. - 26 - COMMON-ISDN-API LISTEN_CONF Beschreibung Mit dieser Message wird die Voreinstellung fr die Be- handlung einkommender Rufe besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x05 / 0x01 byte Controller word Info Parameter Controller transparent (in Applikation einstellbar) Info 0: Listen ist aktiv 0x2001 Falscher Controller 0x3102 Info-Mask falsch kodiert 0x3103 Serviced-EAZ-Mask falsch kodiert 0x3104 Serviced-SI-Mask falsch kodiert 0x3202 Konflikt zwischen Anmeldungen - 27 - COMMON-ISDN-API GET_PARAMS_REQ - Anforderung der Parameter des B- Kanals Beschreibung ber diese Message knnen die Werte diverser Parameter einer B-Kanal-Verbindung ermittelt werden. Die B-Kanal- Verbindung wird durch den angegebenen PLCI identifi- ziert. Message Command/Subcommand: 0x06 / 0x00 word PLCI Parameter PLCI Physical-Link-Connection- Identifier, transparent - 28 - COMMON-ISDN-API GET_PARAMS_CONF Beschreibung Mit dieser Message werden die aktuellen Parameter ei- ner B-Kanal-Verbindung zurckgeliefert. Der Parameter B3-Link-Count enthlt die Anzahl der auf dieser physika- lischen B-Kanal-Verbindung bestehenden Ebene 3-Verbin- dungen. Die Bedeutung der weiteren Parameter ist in den Messages CONNECT_REQ bzw. CONNECT_ACTIVE_IND beschrie- ben. Message Command/Subcommand: 0x06 / 0x01 word PLCI byte Controller byte B-Channel word Info byte B3-Link-Count byte Service byte Service-Add byte Serviced EAZ struct Connected-Address Parameter PLCI Physical-Link-Connection- Identifier, transparent Controller transparent (in Applikation einstellbar) B-Channel Bitfeld, Channel-Identification gem Profil A Info 0: Parameterwert gltig 0x2002 Falscher PLCI 0x3204 PLCI nicht aktiv B3-Link-Count Aktuelle Anzahl der B3- Verbindungen, die ber diese B- Verbindung abgewickelt werden. Service Service-Indicator gem Profil A Service-Add Additional-Info gem Profil A Serviced-EAZ EAZ gem Profil A Connected-Address Connected-Address gem Profil A - 29 - COMMON-ISDN-API INFO_REQ - Einstellung der zu meldenden Informationen des B-Kanals Beschreibung ber diese Message wird eingestellt, welche den B- Kanal betreffenden W-Elemente an die Anwendung gemeldet werden sollen. ber die Info-Mask werden die W-Elemente im einzelnen angegeben. ber den Parameter PLCI wird die B-Kanal-Verbindung identifiziert. Ein INFO_REQ kann im Laufe einer Verbindung beliebig oft verwendet werden. Es gilt jeweils die zuletzt ange- gebene Info-Mask. Die Meldung von W-Elementen kann durch eine Info-Mask mit dem Wert 0 abgeschaltet werden. Message Command/Subcommand: 0x07 / 0x00 word PLCI dword Info-Mask Parameter PLCI Physical-Link-Connection- Identifier, transparent Info-Mask Bitfeld, Kodierung wie folgt: [0] Charging-Information [1] Date [2] Display [3] User-User-Information [4] Cause [5] Status des gerufenen Tln [6..31] reserved Hinweis Mit dem Bitfeld Info-Mask wird angegeben, welche W- Elemente beim Empfang das Auslsen einer INFO_IND ausl- sen sollen. - 30 - COMMON-ISDN-API INFO_CONF Beschreibung Mit dieser Message wird die Einstellung der zu melden- den W-Elemente besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x07 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection- Identifier, transparent Info 0: W-Elemente selektiert 0x2002 Falscher PLCI 0x3102 Info-Mask falsch kodiert - 31 - COMMON-ISDN-API INFO_IND - Meldung von Ereignissen des B-Kanals Beschreibung ber diese Message wird ein durch ein W-Element (Info- Element) ausgedrcktes Ereignis fr einen B-Kanal ange- zeigt. Die B-Kanal-Verbindung wird ber den angegebenen PLCI identifiziert. Das gemeldete W-Element wird ber den Parameter Info-Number (Kodierung gem Profil A) identifiziert. Der Wert des W-Elements wird in dem Pa- rameter Info-Element (Kodierung gem Profil A) angege- ben. Message Command/Subcommand: 0x07 / 0x02 word PLCI word Info-Number struct Info-Element Parameter PLCI Physical-Link-Connection- Identifier, transparent Info-Number Identifizierung des W-Elementes gem Profil A Info-Element W-Element-abhngige Struktur Hinweis Fr jedes W-Element wird eine einzelne INFO_IND ange- zeigt. - 32 - COMMON-ISDN-API INFO_RESP Beschreibung Mit dieser Message besttigt die Anwendung den Erhalt einer INFO_IND. Message Command/Subcommand: 0x07 / 0x03 word PLCI Parameter PLCI Physical-Link-Connection- Identifier, transparent Hinweis Diese Message hat keine Funktionalitt. - 33 - COMMON-ISDN-API DATA_REQ - Senden von Daten im D-Kanal mit USER-INFO- Messages Beschreibung ber diese Message knnen Daten in Form von User-User- Informationen bertragen werden. ber den PLCI wird die B-Kanal-Verbindung identifiziert. Die zu bertragenden Daten werden in einer Stuktur Data angegeben. Message Command/Subcommand: 0x08 / 0x00 word PLCI struct User-Data Parameter PLCI Physical-Link-Connection- Identifier, transparent User-Data User-User-Information gem Pro- fil A Hinweis Diese Funktion wird nicht in allen Netzen untersttzt. - 34 - COMMON-ISDN-API DATA_CONF Beschreibung Mit dieser Message wird die Annahme des DATA_REQ be- sttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x08 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection- Identifier, transparent Info 0: Senden der User-Data eingeleitet 0x2002 Falscher PLCI 0x3203 Funktion wird nicht untersttzt 0x3204 PLCI nicht aktiv - 35 - COMMON-ISDN-API DATA_IND - Empfang von Daten im D-Kanal ber USER- INFO-Messages Beschreibung ber diese Message werden eingehende Daten, die in Form von User-User-Informationen bertragen wurden, an- gezeigt. ber den PLCI wird die B-Kanal-Verbindung iden- tifiziert. Die einkommenden Daten werden in einer Stuk- tur User-Data geliefert. Message Command/Subcommand: 0x08 / 0x02 word PLCI struct User-Data Parameter PLCI Physical-Link-Connection- Identifier, transparent User-Data User-User-Information gem Pro- fil A Hinweis Diese Funktion wird nicht in allen Netzen untersttzt. - 36 - COMMON-ISDN-API DATA_RESP Beschreibung Mit dieser Message besttigt die Anwendung den Erhalt einer DATA_IND. Message Command/Subcommand: 0x08 / 0x03 word PLCI Parameter PLCI Physical-Link-Connection- Identifier, transparent Hinweis Diese Message hat keine Funktionalitt. - 37 - COMMON-ISDN-API 5.2 Protokollebene 2 SELECT_B2_PROTOCOL_REQ - Auswahl des Ebene 2-Protokolls Beschreibung Mit dieser Message kann das zu verwendende Protokoll der Ebene 2 ausgewhlt werden. ber den Parameter PLCI wird die B-Kanal- Verbindung identifiziert. Die Auswahl des Protokolls erfolgt ber die Angabe von B2-Protocol. Falls fr einen PLCI keine Protokoll- selektion durchgefhrt wird, gilt die Voreinstellung. ber den Parameter DLPD knnen protokollabhngige Zusatzinfor- mationen eingestellt werden. Message Command/Subcommand: 0x40 / 0x00 word PLCI byte B2-Protocol struct DLPD Parameter PLCI Physical-Link-Connection-Identifier, transparent B2-Protocol Protokoll-Identifikation: 0x01 X.75 SLP Basis Operation Mode, mit Implementation Rules nach T.90 (Voreinstellung) 0x02 Transparent-HDLC mit Bit-Stuf- fing, Frame-Erkennung und CRC- Check 0x03 Bittransparent 0x04 SNA-SDLC 0x05 X.75 Btx 0x.. Reserved DLPD Data-Link-Protocol-Description Struktur mit folgenden Zusatzinforma- tionen: word Data-Length byte Link-Address-A byte Link-Address-B byte Modulo-Mode byte Window-Size struct XID - 38 - COMMON-ISDN-API Data-Length Maximale Lnge eines Ebene-2 Informationsfeldes Link-Address-A Link Adresse A Link-Address-B Link Adresse B Modulo-Mode 8: Modulo 8 128: Modulo 128 Window-Size Window-Gre XID Struktur fr XID-Informationen im SNA-Protokoll Voreinstellung fr verschiedene Ebene-2-Protokolle: B2-Protocol 0x01 0x02 0x03 0x04 0x05 Data-Length 130 512 512 262 130 Link-Address-A 0x03 o.B. o.B. 0xC1 0x03 Link-Address-B 0x01 o.B. o.B. o.B. 0x01 Modulo-Mode 8 o.B. o.B. 8 8 Window-Size 7 o.B. o.B. 7 7 XID o.B. o.B. o.B. * o.B. *: Struktur der Lnge 0 o.B.: ohne Bedeutung Hinweis Ohne einen Aufruf von SELECT_B2_PROTOCOL_REQ wird das voreinge- stellte Protokoll X.75 verwendet. Die Struktur DLPD mit der Lnge 0 selektiert die Voreinstellung des gewhlten Ebene-2-Protokolls. Die Initialisierung und Abarbeitung der Ebene 2 erfolgt implizit zusammen mit den Messages der Ebene 3. Das fr diese Protokollebene als Voreinstellung angegebene Pro- tokoll X.75 mu mit den zugehrigen Voreinstellungen des DLPD von allen COMMON-ISDN-API-Realisierungen untersttzt werden. Dabei kann die Data-Length bis zu einer Gre von 2048 Bytes einge- stellt werden. Wenn durch die jeweilige Realisierung weitere Pro- tokolle auf Ebene 2 untersttzt werden, mssen die zugehrigen Voreinstellungen des DLPD ebenfalls untersttzt werden. - 39 - COMMON-ISDN-API SELECT_B2_PROTOCOL_CONF Beschreibung Mit dieser Message wird die Protokolleinstellung besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x40 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent Info 0: Protokoll selektiert 0x2002 Falscher PLCI 0x3105 B2-Protocol falsch 0x3106 DLPD falsch 0x3206 B2-Protokoll wird nicht untersttzt 0x3207 Umschalten des B2-Protokolls in diesem Zustand nicht mglich 0x320A Verwendete Parameter im DLPD werden nicht untersttzt - 40 - COMMON-ISDN-API 5.3 Protokollebene 3 SELECT_B3_PROTOCOL_REQ - Auswahl des Ebene 3-Protokolls Beschreibung Mit dieser Message kann das zu verwendende Protokoll der Ebene 3 ausgewhlt werden. ber den Parameter PLCI wird die B-Kanal- Verbindung identifiziert. Die Auswahl des Protokolls erfolgt ber die Angabe von B3-Protocol. Falls fr einen PLCI keine Protokoll- selektion durchgefhrt wird, gilt die Voreinstellung. ber den Parameter NCPD knnen protokollabhngige Zusatzinformationen ein- gestellt werden. Message Command/Subcommand: 0x80 / 0x00 word PLCI byte B3-Protocol struct NCPD Parameter PLCI Physical-Link-Connection-Identifier, transparent B3-Protocol Protokoll-Identifikation: 0x01 T70 NL fr Leitungsvermittlung (CSPDN) (Voreinstellung) 0x02 ISO 8208 (DTE/DTE) 0x03 Ebene 3 gem T.90, Appendix II 0x04 Transparent 0x.. Reserved NCPD Network-Control-Protocol-Description mit protokollabhngigen Zusatzinformationen: word LIC word HIC word LTC word HTC word LOC word HOC byte Modulo-Mode LIC ffs. HIC ffs. LTC ffs. HTC ffs. - 41 - COMMON-ISDN-API LOC ffs. HOC ffs. Modulo-Mode 8: Modulo 8 128: Modulo 128 Voreinstellung fr verschiedene Ebene-3-Protokolle: B3-Protocol 0x01 0x02 0x03 0x04 LIC o.B. ffs. ffs. o.B. HIC o.B. ffs. ffs. o.B. LTC o.B. ffs. ffs. o.B. HTC o.B. ffs. ffs. o.B. LOC o.B. ffs. ffs. o.B. HOC o.B. ffs. ffs. o.B. Modulo-Mode 8 ffs. ffs. 8 o.B.: ohne Bedeutung Hinweis Ohne einen Aufruf von SELECT_B3_PROTOCOL_REQ wird das voreinge- stellte Protokoll T70 NL verwendet. Die Struktur NCPD mit der Lnge 0 selektiert die Voreinstellung des gewhlten Ebene-3- Protokolls. Bei transparenter Ebene 3 erfolgt die Aktivierung und Deaktivierung sowie der Datenaustausch mit der Ebene 2 ber die entsprechenden Operationen der Ebene 3. Der in den Messages CONNECT_B3_REQ, CONNECT_B3_IND, CON- NECT_B3_RESP, CONNECT_B3_ACTIVE_IND, DISCONNECT_B3_REQ und DI- SCONNECT_B3_IND verwendete Parameter NCPI ist fr die Protokolle T70 NL und Transparent ohne Bedeutung und wird als Struktur der Lnge 0 bergeben. Wenn die Protokolle ISO 8208 oder Ebene 3 ge- m T.90 selektiert sind, enthlt der Parameter NCPI den Inhalt der X.25 PLP-Pakete nach dem Packet-Type. Die Reset-Prozedur ist je nach eingestelltem Protokoll unter- schiedlich. Bei den Protokollen T70 NL, ISO 8208 und T.90 wird die Reset-Prozedur entsprechend der Protokollempfehlungen durch- gefhrt. Bei dem Protokoll Transparent wird ein RESET_B3_REQ ohne weitere Auswirkungen mit einem erfolgreichen RESET_B3_CONF beant- wortet. Das fr diese Protokollebene als Voreinstellung angegebene Pro- tokoll T70 NL mu mit den zugehrigen Voreinstellungen des NCPD von allen COMMON-ISDN-API-Realisierungen untersttzt werden. Wenn durch die jeweilige Realisierung weitere Protokolle auf Ebene 3 untersttzt werden, mssen die zugehrigen Voreinstellungen des NCPD ebenfalls untersttzt werden. - 42 - COMMON-ISDN-API SELECT_B3_PROTOCOL_CONF Beschreibung Mit dieser Message wird die Protokolleinstellung besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x80 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent Info 0: Protokoll selektiert 0x2002 Falscher PLCI 0x3107 B3-Protocol falsch 0x3108 NCPD falsch 0x3208 B3-Protokoll wird nicht untersttzt 0x3209 Umschalten des B3-Protokolls in diesem Zustand nicht mglich 0x320B Verwendete Parameter im NCPD werden nicht untersttzt - 43 - COMMON-ISDN-API LISTEN_B3_REQ - Einstellung der Bearbeitung der Ebene 3 Beschreibung In der Voreinstellung werden eingehende Rufe auf Ebene 3 einer Anwendung nicht mitgeteilt. ber die Message LISTEN_B3_REQ kann das Melden von eingehenden Rufen der Ebene 3 aktiviert werden. ber den PLCI wird die B-Kanal-Verbindung identifiziert. Ein LISTEN_B3_REQ kann deshalb nur dann abgesetzt werden, wenn ein PLCI zur Verfgung steht. Andere Einschrnkungen fr den Zeit- punkt zu dem diese Messsage an das API gesendet werden darf, be- stehen nicht. Die Wirkung des LISTEN_B3_REQ wird erst aufgehoben, wenn der zugehrige PLCI ungltig wird, d.h. wenn die Schicht-1 Verbindung im Netz ausgelst wird. Message Command/Subcommand: 0x81 / 0x00 word PLCI Parameter PLCI Physical-Link-Connection-Identifier, transparent - 44 - COMMON-ISDN-API LISTEN_B3_CONF Beschreibung Mit dieser Message wird die Voreinstellung fr die Behandlung einkommender Rufe auf Ebene 3 besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x81 / 0x01 word PLCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent Info 0: Listen ist aktiv 0x2002 Falscher PLCI - 45 - COMMON-ISDN-API CONNECT_B3_REQ - Aufbau der Ebene 3-Verbindung Beschreibung Mit dieser Message wird der Aufbau einer Ebene 3-Verbindung eingeleitet. ber den Parameter PLCI wird die zu verwendende B- Kanal Verbindung identifiziert. Mit dem Parameter NCPI knnen protokollabhngige Zusatzinformationen bergeben werden. Message Command/Subcommand: 0x82 / 0x00 word PLCI struct NCPI Parameter PLCI Physical-Link-Connection-Identifier, transparent NCPI Network-Control-Protocol-Information, Struktur mit protokollabhngigen Zusatzinformationen. Hinweis Die Bedeutung des Parameters NCPI ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTOCOL_REQ. - 46 - COMMON-ISDN-API CONNECT_B3_CONF Beschreibung Mit dieser Message wird die Einleitung des Verbindungsaufbaus einer Ebene 3-Verbindung besttigt. Damit wird dieser Verbindung ein NCCI zugeteilt, ber den sie im weiteren identifiziert wird. Eventuelle Fehler werden im Parameter Info zurckgeliefert. Message Command/Subcommand: 0x82 / 0x01 word PLCI word NCCI word Info Parameter PLCI Physical-Link-Connection-Identifier, transparent NCCI Network-Control-Connection-Identifier, transparent Info 0: Connect eingeleitet 0x2002 Falscher PLCI 0x3109 NCPI falsch 0x3204 PLCI nicht aktiv 0x320C Verwendete Parameter im NCPI werden nicht untersttzt Hinweis Die Verbindung ist zu diesem Zeitpunkt in der Aufbauphase. Die Durchschaltung wird spter durch die Message CON- NECT_B3_ACTIVE_IND angezeigt. - 47 - COMMON-ISDN-API CONNECT_B3_IND - Anzeige einer einkommenden Ebene 3-Verbindung Beschreibung Mit dieser Message wird ein eingehender Ruf fr eine Ebene 3- Verbindung angezeigt. Zu dem Zeitpunkt dieser Message befindet sich die Verbindung in der Aufbauphase. Die sptere Durchschal- tung wird ber die Message CONNECT_B3_ACTIVE_IND angezeigt. Fr den einkommenden Ruf wird ein NCCI vergeben, ber den die- ser Ruf im weiteren identifiziert und angesprochen werden kann. Mit dem Parameter NCPI knnen protokollabhngige Zusatzinforma- tionen bergeben werden. Message Command/Subcommand: 0x82 / 0x02 word NCCI word PLCI struct NCPI Parameter NCCI Network-Control-Connection-Identifier, transparent PLCI Physical-Link-Connection-Identifier, transparent NCPI Network-Control-Protocol-Information, Struktur mit protokollabhngigen Zusatzinformatio- nen Hinweis Um die Meldung von eingehenden Rufen zu aktivieren, mu fr je- den zu verwendenden PLCI vorher die Message LISTEN_B3_REQ abge- setzt werden. Die Bedeutung des Parameters NCPI ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTOCOL_REQ. - 48 - COMMON-ISDN-API CONNECT_B3_RESP Beschreibung Mit dieser Message wird ein einkommender Ruf auf der Ebene 3 von der Anwendung angenommen oder abgelehnt. Der einkommende Ruf wird ber den Parameter NCCI identifiziert. ber den Para- meter Reject kann der Ruf angenommen oder abgelehnt werden. Mit dem Parameter NCPI knnen protokollabhngige Zusatzinformatio- nen bergeben werden. Message Command/Subcommand: 0x82 / 0x03 word NCCI byte Reject struct NCPI Parameter NCCI Network-Control-Connection-Identifier, transparent NCPI Network-Control Protocol-Information, Struktur mit protokollabhngigen Zusatzin- formationen. Reject 0: Accept Call <>0: Reject Call Hinweis Die Bedeutung des Parameters NCPI ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTOCOL_REQ. - 49 - COMMON-ISDN-API CONNECT_B3_ACTIVE_IND - Anzeige, B-Kanal Ebene-3 ist aktiv Beschreibung Mit dieser Message wird die Durchschaltung der Ebene 3- Verbindung angezeigt. Die Verbindung wird ber den Parameter NCCI identifiziert. Mit dem Parameter NCPI knnen protokollabhngige Zusatzinformationen bergeben werden. Message Command/Subcommand: 0x83 / 0x02 word NCCI struct NCPI Parameter NCCI Network-Control-Connection-Identifier, transparent NCPI Network-Control Protocol-Information, Struktur mit protokollabhngigen Zusatzin- formationen. Hinweis Die Bedeutung des Parameters NCPI ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTOCOL_REQ. - 50 - COMMON-ISDN-API CONNECT_B3_ACTIVE_RESP Beschreibung Mit dieser Message besttigt die Anwendung die Durchschaltung einer Ebene 3-Verbindung. Message Command/Subcommand: 0x83 / 0x03 word NCCI Parameter NCCI Network-Control-Connection-Identifier, transparent Hinweis Diese Message hat keine Funktionalitt. - 51 - COMMON-ISDN-API DISCONNECT_B3_REQ - Abbau einer Ebene 3-Verbindung Beschreibung ber diese Message wird der Verbindungsabbau einer Ebene 3- Verbindung eingeleitet. Die Verbindung wird ber den angegebenen NCCI identifiziert. Mit dem Parameter NCPI knnen protokollabhn- gige Zusatzinformationen bergeben werden. Message Command/Subcommand: 0x84 / 0x00 word NCCI struct NCPI Parameter NCCI Network-Control-Connection-Identifier, transparent NCPI Network-Control Protocol-Information, Struktur mit protokollabhngigen Zusatzin- formationen. Hinweis Die Bedeutung des Parameters NCPI ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTOCOL_REQ. - 52 - COMMON-ISDN-API DISCONNECT_B3_CONF Beschreibung Mit dieser Message wird die Einleitung des Verbindungsabbaus besttigt. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x84 / 0x01 word NCCI word Info Parameter NCCI Network-C ontrol-Co nnection- Identifie r, transparent Info 0: Disconnect eingeleitet 0x2003 Falscher NCCI 0x3109 NCPI falsch 0x320C Verwendete Parameter im NCPI werden nicht untersttzt - 53 - COMMON-ISDN-API DISCONNECT_B3_IND - Anzeige des Abbaus einer Ebene 3-Verbindung Beschreibung ber diese Message wird der Abbau einer Ebene 3-Verbindung an- gezeigt. Die Verbindung wird ber den angegebenen NCCI identifi- ziert. Mit dem Parameter NCPI knnen protokollabhngige Zusatzin- formationen bergeben werden. Message Command/Subcommand: 0x84 / 0x02 word NCCI word Info struct NCPI Parameter NCCI Network-Control-Connection-Identifier, transparent Info 0x3303 Fehler beim Aufbau B- Kanal Ebene 1 0x3304 Fehler beim Aufbau B- Kanal Ebene 2 0x3308 Abbruch B-Kanal Ebene 1 0x3309 Abbruch B-Kanal Ebene 2 0x330A Abbruch B-Kanal Ebene 3 NCPI Network-Control Protocol- Information, Struktur mit proto- kollabhngigen Zusatzinformatio- nen. Hinweis Die Bedeutung des Parameters NCPI ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTOCOL_REQ. - 54 - COMMON-ISDN-API DISCONNECT_B3_RESP Beschreibung Mit dieser Message besttigt die Anwendung den Abbau einer Ebene 3-Verbindung. Message Command/Subcommand: 0x84 / 0x03 word NCCI Parameter NCCI Network-Control-Connection- Identifier, transparent Hinweis Mit dieser Message wird der NCCI freigegeben. - 55 - COMMON-ISDN-API GET_B3_PARAMS_REQ - Anforderung der Ebene 3-Parameter Beschreibung ber diese Message knnen Zusatzinformationen zu einer Ebene 3-Verbindung abgefragt werden. Die Ebene 3- Verbindung wird dabei ber den NCCI identifiziert. Message Command/Subcommand: 0x85 / 0x00 word NCCI Parameter NCCI Network-Control-Connection- Identifier, transparent - 56 - COMMON-ISDN-API GET_B3_PARAMS_CONF Beschreibung ber diese Message werden die mit GET_B3_PARAMS_REQ angeforderten Zusatzinformationen zu einer Ebene 3- Verbindung geliefert. Die Ebene 3-Verbindung wird ber den NCCI identifizert. Der Parameter PLCI gibt an, auf welcher B-Kanal-Verbindung die Ebene 3-Verbindung unter- halten wird. Eventuelle Fehler sind in dem Parameter Info kodiert. Message Command/Subcommand: 0x85 / 0x01 word NCCI word PLCI word Info Parameter NCCI Network-Control-Connection- Identifier, transparent PLCI Physical-Link-Connection- Identifier, transparent Info 0: Parameter verfgbar 0x2003 Falscher NCCI 0x3205 NCCI nicht aktiv - 57 - COMMON-ISDN-API DATA_B3_REQ - Senden von Daten der Ebene 3 Beschreibung Mit dieser Message werden Daten auf einer Ebene 3- Verbindung abgesandt. Die Ebene 3-Verbindung wird ber den NCCI identifiziert. Die Lnge des zu versendenden Datenbereichs wird ber den Parameter Data-Length ange- geben. Die zu versendenden Daten werden ber den Parameter Data referenziert. Die Daten sind somit nicht Bestand- teil der Message. ber den Parameter Number wird eine Blocknummer fr diesen Datenbereich durch die Anwendung vergeben. Bei der spteren Besttigung durch eine DATA_B3_CONF wird diese Blocknummer mitgeliefert. ber den Parameter Flags ist die Einstellung der Zu- satzinformationen wie More-Data, Delivery-Confirmation etc. mglich. Die angegebenen Flags werden nicht von al- len Protokollen untersttzt Message Command/Subcommand: 0x86 / 0x00 word NCCI word Data-Length dword Data byte Number word Flags Parameter NCCI Network-Control-Connection- Identifier, transparent Data-Length Gre des zu sendenden Datenbe- reichs Data Pointer auf die zu sendenden Daten Number Blocknummer, transparent fr das COMMON-ISDN-API, wird jedoch in DATA_B3_CONF referenziert. Flags [0] Qualifier-Bit [1] More-Data-Bit [2] Delivery-Confirmation- Bit [3..15] Reserved Hinweis Der Datenbereich gilt erst dann als frei, wenn durch das COMMON-ISDN-API eine entsprechende DATA_B3_CONF ge- sendet wurde. Der Datentransfer untersttzt keine Assembly- Funktionen. - 58 - COMMON-ISDN-API DATA_B3_CONF Beschreibung Mit dieser Message wird die Annahme eines zu versen- denden Datenpaketes besttigt. Die Ebene 3-Verbindung wird durch den Parameter NCCI identifiziert. Als Refe- renz auf den bernommenen Datenbereich wird im Parameter Number die von der Anwendung im zugehrigen DATA_B3_REQ verwendete Blocknummer geliefert. Message Command/Subcommand: 0x86 / 0x01 word NCCI byte Number word Info Parameter NCCI Network-Control-Connection- Identifier, transparent Number Blocknummer, Referenz auf Number in korrespondierender DATA_B3_REQ Info 0: Senden der Daten einge- leitet 0x2003 Falscher NCCI 0x310A Flags falsch kodiert 0x3205 NCCI nicht aktiv 0x320D Nicht untersttzte Data-Length - 59 - COMMON-ISDN-API DATA_B3_IND - Anzeige von einkommenden Daten der Ebene 3 Beschreibung Mit dieser Message werden einkommende Daten auf einer Ebene 3-Verbindung angezeigt. Die Ebene 3-Verbindung wird ber den NCCI identifiziert. Die Lnge des einkom- menden Datenbereichs wird ber den Parameter Data-Length angegeben. Die einkommenden Daten werden ber den Parameter Data referenziert. Die Daten sind somit nicht Bestandteil der Message. ber den Parameter Number wird eine Blocknummer fr diesen Datenbereich durch das COMMON-ISDN-API vergeben. Bei der spteren Besttigung durch eine DATA_B3_RESP mu diese Blocknummer von der Anwendung mitgeliefert werden. ber den Parameter Flags werden die Zusatzinformatio- nen wie More-Data, Delivery-Confirmation etc. mitgelie- fert. Die angegebenen Flags werden nicht von allen Pro- tokollen untersttzt Message Command/Subcommand: 0x86 / 0x02 word NCCI word Data-Length dword Data byte Number word Flags Parameter NCCI Network-Control-Connection- Identifier, transparent Data Pointer auf die empfangenen Daten Data-Length Gre des empfangenen Datenbe- reichs Number Blocknummer, fortlaufend, wird in DATA_B3_RESP referenziert. Flags [0] Qualifier-Bit [1] More-Data-Bit [2] Delivery-Confirmation- Bit [3..15] Reserved Hinweis Der Datenbereich gilt fr das COMMON-ISDN-API erst dann als frei, wenn durch das Anwendungsprogramm eine entsprechende DATA_B3_RESP gesendet wurde. Der Datentransfer untersttzt keine Reassembly- Funktionen. - 60 - COMMON-ISDN-API DATA_B3_RESP Beschreibung Mit dieser Message wird die Annahme eines einkommenden Datenpaketes durch die Anwendung besttigt. Die Ebene 3- Verbindung wird durch den Parameter NCCI identifiziert. Als Referenz auf den bernommenen Datenbereich wird im Parameter Number die vom COMMON-ISDN-API im zugehrigen DATA_B3_IND verwendete Blocknummer angegeben. Message Command/Subcommand: 0x86 / 0x03 word NCCI byte Number Parameter NCCI Network-Control-Connection- Identifier, transparent Number Blocknummer, Referenz auf Number in korrespondierender DATA_B3_IND - 61 - COMMON-ISDN-API RESET_B3_REQ - Rcksetzen einer Verbindung / eines Controllers Beschreibung Mit dieser Message wird die angegebene Ebene 3- Verbindung zurckgesetzt. Die Ebene 3-Verbindung wird ber einen NCCI identifiziert. Message Command/Subcommand: 0x01 / 0x00 word NCCI Parameter NCCI Network-Control-Connection- Identifier, transparent Hinweis Die Reaktion auf einen RESET_B3_REQ ist abhngig vom verwendeten Protokoll. Siehe dazu SELECT_B3_PROTO- COL_REQ. - 62 - COMMON-ISDN-API RESET_B3_CONF Beschreibung Mit dieser Message wird das Zurcksetzen einer Ebene 3-Verbindung angezeigt. Message Command/Subcommand: 0x01 / 0x01 word NCCI word Info Parameter NCCI Network-Control-Connection- Identifier, transparent Info 0: Reset durchgefhrt 0x2003 Falscher NCCI 0x330A Abbruch B-Kanal Ebene 3 0x330C Reestablish B-Kanal Ebene 3 Hinweis Wenn die Implementierung der Ebene 3 ein Reestablish nicht vorsieht, wird die entsprechende Verbindung abge- baut und dies in dem Parameter Info mitgeteilt. - 63 - COMMON-ISDN-API RESET_B3_IND - Anzeige, Verbindung zurcksetzen Beschreibung Mit dieser Message wird das Zurcksetzen einer Ebene 3-Verbindung signalisiert. Dabei wird die Ebene 3- Verbindung ber einen NCCI identifiziert. Message Command/Subcommand: 0x01 / 0x02 word NCCI Parameter NCCI Network-Control-Connection- Identifier, transparent - 64 - COMMON-ISDN-API RESET_B3_RESP Beschreibung Mit dieser Message besttigt die Anwendung das Zurck- setzen einer Ebene 3-Verbindung. Message Command/Subcommand: 0x01 / 0x03 word NCCI Parameter NCCI Network-Control-Connection- Identifier, transparent Hinweis Diese Message hat keine Funktionalitt - 65 - COMMON-ISDN-API 5.4 Telefondienst HANDSET_IND - Meldung von Ereignissen des Handsets (Telefonhrer) Beschreibung Die Meldung HANDSET_IND bermittelt Ereignisse eines angeschlossenen Telefonsets. Das Telefonset wird als ei- genstndige Einheit verstanden. D.h. insbesondere, da die Nutzung des Telefondienstes auch ohne ein Anwen- dungsprogramm jederzeit mglich ist. Darber hinaus ist die Kopplung mit einem Anwendungsprogramm mglich. Die- ses wird einerseits ber alle Ereignisse des Telefonsets informiert, andererseits kann es eigenstndig Verbindun- gen auf- und abbauen. Message Command/Subcommand: 0x87 / 0x02 word PLCI byte Controller byte Status Parameter Controller transparent PLCI Phy sic al- Lin k-C onn ect ion - Identifier, transparent Status IA5-Zeichen '0'..'9','#','*','a','b','c','d': gewhlte Ziffer '+': Hrer abgenommen '-': Hrer aufgelegt Hinweis Die Kopplung eines Anwendungsprogrammes mit dem Tele- fonset erfolgt unter folgenden Bedingungen: 1. Ein LISTEN_REQ fr den Dienst Fernsprechen wurde fr den entsprechenden Controller durch- gefhrt, oder 2. die Anwendung hat mit der Message CONNECT_REQ eine Verbindung fr den Telefondienst aufge- baut. Solange der damit verbundene PLCI gltig ist, werden die Ereignisse des Telefonsets ge- meldet. Die Zeichen '+' und '-' bezeichnen eine Zustands- nderung; sie stellen keine Zustandsbeschreibung dar. - 66 - COMMON-ISDN-API HANDSET_RESP Beschreibung Mit dieser Message besttigt die Anwendung Ereignisse des Telefonsets. Message Command/Subcommand: 0x87 / 0x03 word PLCI Parameter PLCI Physical-Link-Connection- Identifier, transparent Hinweis Diese Message hat keine Funktionalitt. - 67 - COMMON-ISDN-API 5.5 Herstellerspezifische Messages Nachfolgend werden die herstellerspezifischen Messages beschrieben. Dabei wird nur das Protokoll fest vorgege- ben. Die Inhalte und die damit verbundenen Funktionali- tten sind vom Hersteller zu erfragen. MANUFACTURER_REQ - herstellerspezifische Anfrage Message Command/Subcommand: 0xFF / 0x00 Parameter herstellerspezifisch - 68 - COMMON-ISDN-API MANUFACTURER_CONF Message Command/Subcommand: 0xFF / 0x01 Parameter herstellerspezifisch - 69 - COMMON-ISDN-API MANUFACTURER_IND - herstellerspezifische Anzeige Message Command/Subcommand: 0xFF / 0x02 Parameter herstellerspezifisch - 70 - COMMON-ISDN-API MANUFACTURER_RESP Message Command/Subcommand: 0xFF / 0x03 Parameter herstellerspezifisch - 71 - COMMON-ISDN-API 5.6 Sonstige Funktionen Neben den Message-Operationen existieren noch andere lokale Operationen. Da diese Operationen betriebssystem- abhngig sind, werden sie exemplarisch in Realisierung unter MS-DOS (Anhang A, Punkt 1) beschrieben. An dieser Stelle werden die Operationen grundstzlich erkrt. 5.6.1 Herstelleridentifikation Die Herstelleridentifikation erfolgt im Klartext in ASCII-Kodierung. Das Ende der Identifikation wird durch ein 0-Byte angezeigt. Die maximale Lnge einer Herstel- leridentifikation betrgt 64 Bytes. Beispiele fr eine Herstelleridentifikation sind: - AVM-GmbH - Version: 1.1 Revision: 1.0 - Stollmann GmbH - Systec Es wird vorgeschlagen, die Herstelleridentifikation mit einer zustzlichen Versions- und Revisionsnummer im Klartext zu ergnzen. Das Format dieser Angabe kann bei den einzelnen Firmen angefragt werden. 5.6.2 Versionsnummer des COMMON-ISDN-API Die Versionsnummer des COMMON-ISDN-API wird im Klar- text in der Form Version 1.1, Profil A zurckgeliefert. Optional kann eine herstellereigene Revisionsnummer so- wie eine Datumsangabe folgen. Das Ende wird durch ein 0- Byte angezeigt. 5.6.3 Seriennummer des COMMON-ISDN-API Die (optionale) Seriennummer wird im Klartext in der Form einer siebenstelligen Zahl zurckgeliefert. Soll keine Seriennummer verwendet werden, ist der Puffer leer zurckzuliefern. Das Ende wird durch ein 0-Byte ange- zeigt. - 72 - COMMON-ISDN-API 6. Ablaufdiagramme Fr die Spezifikation der Ablaufdiagramme fordern Sie bitte die schriftliche Ausfhrung der Spezfikation COM- MON-ISDN-API an (siehe Impressum). COMMON-ISDN-API Anhang A Implementierung unter verschiedenen Betriebssystemen Version 1.1 COMMON-ISDN-API COMMON-ISDN-API 1. Realisierung unter MS-DOS Da das Betriebsystem MS-DOS keine Multitasking- Mglichkeiten zur Verfgung stellt, wird das COMMON- ISDN-API als Hintergrundtreiber (Terminate and Stay Re- sident) in das System eingebunden. Die Schnittstelle zwischen Applikation und dem COMMON-ISDN-API wird ber einen Software-Interrupt realisiert. Der verwendete Vek- tor mu dabei sowohl im COMMON-ISDN-API als auch in der Applikation konfigurierbar sein. Voreingestellter Wert fr den Software-Interrupt ist 241 (0xF1). Soll ein an- derer Wert verwendet werden, kann er als Parameter beim Aufruf des COMMON-ISDN-API angegeben werden. Auf dieser Software-Interrupt-Schnittstelle sind die oben beschriebenen Funktionen ber entsprechende Regi- sterbelegungen definiert. Die Rckgabewerte werden im Register AX geliefert. Die Inhalte aller nicht verwende- ten Register bleiben erhalten. Das COMMON-ISDN-API bentigt zur Ausfhrung aller Funktionen einen Stackbereich von maximal 512 Byte, den das Anwendungsprogramm zur Verfgung stellen mu. Realisierung des Software-Interrupts Der Softwareinterrupt fr das COMMON-ISDN-API ist ent- sprechend der BIOS-Interrupt-Chaining-Struktur spezifi- ziert. API PROC FAR ;ISDN-API Interrupt Service JMP SHORT DOIT ;Jump to start of routine O_API DD ? ;chained interrupt DW 424BH ;interrupt chaining signiture DB 80H ;first in chain flag DB 'IA' ;CAPI signature ... DOIT: Anhang A - 1 - COMMON-ISDN-API Die Zeichen 'IA' knnen von der Anwendung bei Offset 9 entsprechend dieser Struktur abgefragt werden Darstellung eines Pointers Der in den Messages DATA_B3_REQ und DATA_B3_IND ange- gebene Pointer ist unter MS-DOS als FAR-Pointer reali- siert. Anhang A - 2 - COMMON-ISDN-API Speicheranordnung der Basisdatentypen niederwertiges Wort (Adresse n) <-- niederwertig <------ Byte 0 -------><------ Byte 1 -------> Ŀ 7 6 5 4 3 2 1 0 Ŀ 7 6 5 4 3 2 1 0151413121110 9 8 7 6 5 4 3 2 1 0151413121110 9 8 hherwertiges Wort (Adresse n+1) hherwertig --> <------ Byte 2 -------><------ Byte 3 -------> Ŀ 23222120191817163130292827262524 Hinweis: Die Ziffern in den Ksten sind Bitnummern. Die Numerierung beginnt mit dem niederwertigen Bit (Nummer 0). Anhang A - 3 - COMMON-ISDN-API 1.1 Message-Operationen unter MS-DOS API_REGISTER - Registrierung einer Applikation beim COMMON-ISDN-API Beschreibung Mit dieser Funktion meldet sich die Anwendung bei dem COMMON-ISDN-API an. Die Anwendung stellt dem COMMON-ISDN-API dabei einen Speicherbereich zur Verfgung. Ein far Pointer auf diesen Speicherbe- reich wird in den Registern ES:BX bergeben. Die Gre des Speicherbereiches berechnet sich nach folgender Formel: ( 180 * CX ) + ( DX * SI * DI ) Im Register CX wird die Anzahl von Messages ber- geben, die mindestens gespeichert werden knnen bevor ein Datenverlust eintreten kann. Im Register DX gibt die Anwendung die maximale An- zahl gleichzeitig geffneter Ebene-3 Verbindungen an. Ein Versuch mehr Ebene-3 Verbindungen, als hier angegeben gleichzeitig zu ffnen, kann durch das COMMON-ISDN-API mit einer Fehlermeldung quit- tiert werden. Im Register SI stellt die Anwendung ein, wieviel empfangenen B3-Datenblcke maximal vom COMMON- ISDN-API gleichzeitig an die Anwendung gemeldet werden knnen. Die Anzahl gleichzeitig verfgbarer B3-Datenblcke beeinflut entscheidend den B3- Daten-Durchsatz des Systems und sollte einen Wert zwischen 2 und 7 annehmen. Es mu mindestens Platz fr einen B3-Datenblock zur Verfgung ge- stellt werden. Im Register DI stellt die Applikation ein, wie gro die zu sendenden bzw. empfangenen B3- Daten maximal sind. Das Einstellen von Protokollen die grere Pakete verarbeiten, das Senden und Empfangen grerer Pakete kann durch das COMMON- ISDN-API mit einer Fehlermeldung quittiert werden. Im Register AX wird die Applikationsnummer zurck- geliefert. Im Fehlerfall wird im Register AX ein 0 zurckgeliefert. Der Fehlergrund steht in diesem Fall im Register BX. Anhang A - 4 - COMMON-ISDN-API Parameter AH 0x01 ES:BX Far Pointer auf einen Speicher- block, den die Applikation zur Verfgung stellt. Diesen Spei- cherbereich kann das COMMON-ISDN- API nutzen, um die Message-Queue der Applikation zu verwalten. Ferner kann das COMMON-ISDN-API in diesem Spei- cherbereich die empfangen Daten der Ebene-3 bereitstellen. CX Anzahl von Messages, die gespei- chert werden knnen bevor ein Da- tenverlust eintreten kann. DX Maximale Anzahl von Ebene-3 Ver- bindungen SI Anzahl gleichzeitig verfgbarer B3-Datenblcke DI Maximale Gre eines B3-Daten- blockes Returnwert AX 0x0000 Fehler beim registrie- ren, Fehlergrund im Register BX <> 0 App lik ati ons num mer (Appl-ID) BX 0x1001 Fehler beim registrie- ren Hinweis Die maximale Lnge einer Message ist mit 180 fest- gelegt. Wenn die Anwendung maximal eine Ebene-3 Verbindung gleichzeitig geffnet hat und die Standardprotokolle benutzt werden, wird fol- gende Registerbelegung empfohlen: CX = 10, DX = 1, SI = 7, DI = 130 Daraus resultiert ein Speicherbedarf von 2.710 By- tes. Anhang A - 5 - COMMON-ISDN-API API_RELEASE - Abmelden einer Applikation beim COMMON- ISDN-API Beschreibung Mit dieser Funktion meldet sich die Anwendung bei dem COMMON-ISDN-API ab. Damit wird der im API_RE- GISTER angegebene Speicherbereich frei. Die Anwen- dung wird ber die Applikationsnummer im Register DX identifiziert. Eventuell auftretene Fehler wer- den im Register AX zurckgeliefert. Parameter AH 0x02 DX Applikationsnummer Returnwert AX 0x0000 kein Fehler 0x1002 Applikationsnummer falsch Anhang A - 6 - COMMON-ISDN-API API_PUT_MESSAGE - Message an das COMMON-ISDN-API ber- geben Beschreibung Mit dieser Funktion bergibt die Anwendung eine Message an das COMMON-ISDN-API. Dabei wird ein far Pointer auf die Message in den Registern ES:BX bergeben. Die Anwendung wird ber die Applika- tionsnummer im Register DX identifiziert. Eventu- ell auftretene Fehler werden im Register AX zu- rckgeliefert. Parameter AH 0x03 DX Applikationsnummer ES:BX Far Pointer auf die Message Returnwert AX 0x0000 kein Fehler 0x1002 Applikationsnummer falsch 0x1003 Message zu klein oder Messagenummer falsch kodiert 0x1004 falsches Command oder Subcommand 0x1005 Message-Queue voll Hinweis Nach API_PUT_MESSAGE ist der Speicherbereich der Message durch die Applikation wieder nutzbar. Anhang A - 7 - COMMON-ISDN-API API_GET_MESSAGE - Message vom COMMON-ISDN-API holen Beschreibung Mit dieser Funktion holt die Anwendung eine Messa- ge von dem COMMON-ISDN-API. Die Anwendung kann da- bei ausschlielich die Messages abholen, die an die angegebene Applikationsnummer gerichtet sind. Dabei wird ein far Pointer auf die Message in den Registern ES:BX geliefert. Falls keine Message fr die Anwendung vorhanden ist, kehrt die Funktion sofort mit einem entsprechenden Fehlerwert im Re- gister AX zurck. Die Anwendung wird ber die Ap- plikationsnummer im Register DX identifiziert. Eventuell auftretene Fehler werden im Register AX zurckgeliefert. Parameter AH 0x04 DX Applikationsnummer Returnwert AX 0x0000 kein Fehler 0x1002 Applikationsnummer falsch 0x1006 Message-Queue war leer 0x1007 Mindestens eine Message an die Applikation ist verloren gegangen, da die Message-Queue voll war. ES:BX Far Pointer auf die Message Hinweis Die Message kann durch den nchsten Aufruf von API_GET_MESSAGE ungltig werden. Anhang A - 8 - COMMON-ISDN-API 1.2 Sonstige Funktionen unter MS-DOS API_SET_SIGNAL - Adresse einer Signalisierungsfunktion einstellen Beschreibung Mit dieser Funktion kann die Anwendung die Nutzung der Signalisierungsfunktion aktivieren. Dazu wird in den Registern ES:BX ein far Pointer auf eine Signalisierungsfunktion angegeben. Das Deaktivie- ren des Signalisierungsfunktion kann durch ein API_SET_SIGNAL mit der Registerbelegung ES:BX = 0000:0000 erreicht werden. Die Anwendung wird ber die Applikationsnummer im Register DX identifi- ziert. Eventuell auftretene Fehler werden im Regi- ster AX zurckgeliefert. Parameter AH 0x05 DX Applikationsnummer ES:BX Far Pointer auf Signalisierungs- funktion Returnwert AX 0x0000 kein Fehler 0x1002 Applikationsnummer falsch Hinweis Die mit dieser Funktion einstellbare Signalisie- rungsfunktion wird vom COMMON-ISDN-API wie ein In- terrupt aufgerufen. Die Flags sind auf dem Stack, Interrupts sind disabled. Die Signalisierungsfunk- tion mu mit IRET beendet werden. Es drfen keine Register verndert werden. Zum Zeitpunkt des Auf- rufs stehen 32 Bytes an Stack zur Verfgung. Es mu beachtet werden, da diese Funktion zu je- dem beliebigen Zeitpunkt aufgerufen werden kann, also auch dann, wenn z.B. ein MS-DOS-Aufruf in Be- arbeitung ist. Anhang A - 9 - COMMON-ISDN-API API_DEINSTALL - Entfernen des COMMON-ISDN-API Beschreibung Das COMMON-ISDN-API wird aus dem Speicher ent- fernt. Der Speicher wird freigegeben. Die Control- ler werden in den Initialzustand versetzt. Dabei werden alle ISDN-Verbindungen, auer Telefonver- bindungen, auf Ebene 1 ausgelst. Wenn eine oder mehrere Anwendungsprogramme beim COMMON-ISDN-API angemeldet sind, wird der Aufruf von API_DEINSTALL mit einem Fehlerwert beendet. In diesem Fall kann durch Setzen des Parameters Force auf 0x0001 die Deinstallation erzwungen werden. Parameter AH 0x06 BX Force 0x0000 normale Deinstallation 0x0001 erzwungene Deinstalla- tion Returnwert AX 0 kein Fehler 0x1008 Fehler bei Deinstalla- tion Hinweis Wenn andere Anwendungsprogramme installiert sind, die das COMMON-ISDN-API auch nach der Deinstalla- tion aufrufen, sind die Ergebnisse nicht defi- niert. Anhang A - 10 - COMMON-ISDN-API API_GET_MANUFACTURER - Herstelleridentifikation holen Beschreibung Mit dieser Funktion ermittelt die Anwendung die Herstelleridentifikation des COMMON-ISDN-API. In den Registern ES:BX wird dazu ein far Pointer auf einen Datenbereich von mindestens 64 Bytes berge- ben. In diesem Datenbereich befindet sich nach Ausfhrung der Funktion die Herstelleridentifika- tion im Klartext. Das Ende wird durch ein 0-Byte angezeigt. Parameter AH 0xF0 ES:BX Far Pointer auf Buffer (minde- stens 64 Byte gro) Returnwert ES:BX Herstelleridentifikation in Klar- text mit ASCII-Kodierung. Das Ende der Identifikation wird durch ein 0-Byte angezeigt. Anhang A - 11 - COMMON-ISDN-API API_GET_VERSION - Versionsnummer des COMMON-ISDN-API holen Beschreibung Mit dieser Funktion ermittelt die Anwendung die Version des COMMON-ISDN-API. In den Registern ES:BX wird dazu ein far Pointer auf einen Datenbe- reich von mindestens 64 Bytes bergeben. In diesem Datenbereich befindet sich nach Ausfhrung der Funktion die Version in der Form "Version 1.1, Profil A ...". Das Ende wird durch ein 0-Byte an- gezeigt. Parameter AH 0xF1 ES:BX Far Pointer auf Buffer (minde- stens 64 Byte gro) Returnwert ES:BX Die Versionsnummer des COMMON- ISDN-API wird im Klartext in der Form Version 1.1, Profil A zu- rckgeliefert. Optional kann eine Revisionsnummer sowie eine Da- tumsangabe folgen. Das Ende der Versionsnummer wird durch ein 0- Byte angezeigt. Anhang A - 12 - COMMON-ISDN-API API_GET_SERIAL_NUMBER - (optionale) Seriennummer holen Beschreibung Mit dieser Funktion ermittelt die Anwendung die (optionale) Seriennummer des COMMON-ISDN-API. In den Registern ES:BX wird dazu ein far Pointer auf einen Datenbereich von mindestens 64 Bytes berge- ben. In diesem Datenbereich befindet sich nach Ausfhrung der Funktion die Seriennummer in der Form einer siebenstelligen Zahl. Das Ende wird durch ein 0-Byte angezeigt. Wenn keine Seriennum- mer geliefert wird, so ist das Ende der Seriennum- mer in der ersten Position markiert. Parameter AH 0xF2 ES:BX Far Pointer auf Buffer (minde- stens 64 Byte gro) Returnwert ES:BX Die (optionale) Seriennummer wird im Klartext in der Form einer siebenstelligen Zahl zurckgelie- fert. Soll keine Seriennummer verwendet werden, so ist an die erste Position im Buffer ein 0- Byte zu schreiben. Das Ende der Seriennummer wird durch ein 0- Byte angezeigt. Anhang A - 13 - COMMON-ISDN-API API_MANUFACTURER - herstellerspezifische Funktion Beschreibung Diese Funktion ist herstellerspezifisch. Parameter AH 0xFF Die Verwendung der anderen Register ist herstel- lerspezifisch. Returnwert herstellerspezifisch Anhang A - 14 - COMMON-ISDN-API Anhang B Profil Version 1.1 COMMON-ISDN-API COMMON-ISDN-API 1. Profil des COMMON-ISDN-API Die verschiedenen Signalisierungprotokolle im interna- tionalen Einsatz von ISDN-Systemen unterscheiden sich insbesondere in der Datenreprsentation. Dementsprechend erfolgt die Festlegung der Datenreprsentation innerhalb des COMMON-ISDN-API ber Profile, in denen die ntigen Festlegungen ber die Reprsentation der Daten getroffen werden. Damit ist gewhrleistet, da das COMMON-ISDN-API an zuknftige Erweiterungen und nderungen der Datendar- stellung anpabar ist. Zum jetzigen Zeitpunkt ist mit Profil A die Referenzierung zur 1TR6 verfgbar. Anhang B - 1 - COMMON-ISDN-API 1.1 Profil A - Reprsentation gem 1TR6 Datenelement Referenz Additional-Byte d.Servic-Ind. 1 TR 3, Teil 5 Kapitel 3.2.3.4.5.3 Oc- tet 4 Caller-Address 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.10 Octet 3ff. Cause 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.4 Oc- tet 3 Channel-Identification 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.7 Oc- tet 3 Charging-Information 1 TR 3, Teil 5 Kapitel 3.2.3.4.5.4 Oc- tet 3ff. Connected-Address 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.5. Octet 3ff. Date 1 TR 3, Teil 5 Kapitel 3.2.3.4.5.5 Oc- tet 3ff. Destination-Address 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.11 Octet 3ff. Display 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.9 Oc- tet 3ff. EAZ IA5 Zeichen, '0'..'9' 1 TR 3, Teil 5 Kapitel 3.2.3.4.3, Ta- belle 3-60b Info-Number Bit 0-7: Nummer des W-Elementes 1 TR 3, Teil 5 Kapitel 3.2.3.4.4ff Bit 8-10: Codesatz 1 TR 3, Teil 5 Kapitel 3.2.3.4.2ff Anhang B - 2 - COMMON-ISDN-API Datenelement Referenz Service-Indicator 1 TR 3, Teil 5 Kapitel 3.2.3.4.5.3 Oc- tet 3 Status des gerufenen Tln 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.3 Oc- tet 3 Typ/Plan 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.11 Octet 3 User-User-Information 1 TR 3, Teil 5 Kapitel 3.2.3.4.4.15 Octet 3ff. Hinweis: wird z.Z. nicht untersttzt Anhang B - 3 - COMMON-ISDN-API Die vorliegende Dokumentation wurde mit groer Sorg- falt erstellt. Trotzdem knnen Fehler und Unstimmigkei- ten nicht vllig ausgeschlossen werden. nderungen, die dem technischen Fortschritt dienen, bleiben vorbehalten. Geschtzte Warennamen werden in der vorliegenden Doku- mentation nicht als solche kenntlich gemacht. Aus dem Fehlen einer solchen Kennzeichnung kann nicht geschlos- sen werden, da es sich um einen freien Warennamen han- delt. Vervielfltigung und Verteilung der vorliegenden Doku- mentation ist unter Angabe des Impressums ausdrcklich erlaubt. Herausgeber: ISDN-PC-Arbeitskreis der Deutschen Bundespost TELEKOM und den Firmen AVM, Stollmann und Systec Editor: AVM-Berlin GmbH Gustav-Meyer-Allee 25 D-1000 Berlin 65 Tel: 030/46 94 656 Fax: 030/46 94 649