Telefongeräteelemente
Ein Telefongerät ist ein Gerät, das die Telefongeräteklasse unterstützt und einige oder alle der folgenden Elemente enthält:
Hookswitch/Transducer: Dies ist ein Mittel für Audioeingabe und -ausgabe. Ein Telefongerät kann über mehrere Wandler verfügen, die unter Anwendung oder manueller Benutzersteuerung aktiviert und deaktiviert werden können (offhook oder onhook platziert).
Telefonie identifiziert drei Arten von Hookswitch-Geräten, die für viele Telefonsätze üblich sind:
Handset: Die traditionelle Kombination aus Mund und Ohr, die manuell aus einer Wiege angehoben und am Ohr des Benutzers gehalten werden muss.
Freisprecheinrichtung: Ermöglicht dem Benutzer, Anrufe freihändig zu führen. Die Freisprecheinrichtung kann intern oder extern für das Telefongerät sein. Der Sprecherteil einer Freisprecheinrichtung ermöglicht mehrere Hörer.
Headset: Ermöglicht es dem Benutzer, Anrufe freihändig zu führen.Ein Hookswitch muss offhook sein, damit Audiodaten an den entsprechenden Wandler gesendet und/oder empfangen werden können.
Lautstärkeregelung/Verstärkungssteuerung/Stummschaltung: Jedes Hookswitch-Gerät ist die Kopplung eines Lautsprechers und einer Mikrofonkomponente. Die API ermöglicht die Lautstärkeregelung und Das Stummschalten von Lautsprecherkomponenten sowie die Verstärkungssteuerung oder Das Stummschalten von Mikrofonkomponenten.
Klingeln: Ein Mittel zum Warnen von Benutzern, in der Regel durch eine Glocke. Ein Telefongerät kann in einer Vielzahl von Modi oder Mustern klingeln.
Anzeige: Ein Mechanismus zur visuellen Darstellung von Nachrichten für den Benutzer. Eine Telefonanzeige zeichnet sich durch die Anzahl von Zeilen und Spalten aus.
Telefonschaltflächen: Ein Array von Schaltflächen. Immer wenn der Benutzer eine Schaltfläche auf dem Telefonsatz drückt, meldet die API, dass die entsprechende Schaltfläche gedrückt wurde. Knopflampenbezeichner identifizieren ein Knopf- und Lampenpaar. Natürlich ist es möglich, Knopf-Lampen-Paare mit keinem Knopf oder ohne Lampe zu haben. Schaltflächenlampenbezeichner sind ganzzahlige Werte, die von 0 bis zur maximalen Anzahl von Knopflampen, die auf dem Telefongerät verfügbar sind, minus 1 liegen. Jede Schaltfläche gehört zu einer Schaltflächenklasse. Zu den Klassen gehören Schaltflächen für die Anrufdarstellung, Featureschaltflächen, Tasten und lokale Schaltflächen.
Lampen: Eine Reihe von Lampen (z. B. LEDs), die über die API einzeln gesteuert werden können. Lampen können in verschiedenen Modi beleuchtet werden, indem die Ein- und Aus-Frequenz variiert wird. Der Knopflampenbezeichner identifiziert die Lampe.
Datenbereiche: Speicherbereiche auf dem Telefongerät, in die Anweisungscode oder Daten heruntergeladen und/oder von dort hochgeladen werden können. Die heruntergeladenen Informationen würden sich auf das Verhalten des Telefongeräts auswirken (oder anders ausgedrückt: Programm).
TAPI ermöglicht es einer Anwendung, Elemente des Telefongeräts zu überwachen und zu steuern. Die nützlichsten Elemente für eine Anwendung sind die Hookswitch-Geräte. Das Telefonset kann als Audio-E/A-Gerät (für den Computer) mit Lautstärkeregelung, Erfassungssteuerung und Stummschaltung, einem Klingeln (zum Warnen des Benutzers), Datenbereichen (für die Programmierung des Telefons) und vielleicht als Anzeige fungieren, obwohl die Anzeige des Computers besser geeignet ist. Der Application Writer wird davon abgeraten, Telefonlampen oder Telefontasten direkt zu steuern oder zu verwenden, da die Funktionen von Lampe und Schaltflächen zwischen Telefonsätzen stark variieren können und Anwendungen schnell auf bestimmte Telefonsätze zugeschnitten werden können.
Es gibt keinen garantierten Kernsatz von Diensten, die von allen Telefongeräten unterstützt werden, wie es für Leitungsgeräte (die Grundlegenden Telefoniedienste) gibt. Bevor eine Anwendung ein Telefongerät verwenden kann, muss die Anwendung daher zunächst die genauen Funktionen des Telefongeräts ermitteln. Die Telefoniefunktion variiert je nach Konfiguration (Client/Server), Telefonhardware und Dienstanbietersoftware. Anwendungen sollten keine Annahmen darüber treffen, welche Telefoniefunktionen verfügbar sind. Eine Anwendung bestimmt die Gerätefunktionen eines Telefongeräts, indem sie die phoneGetDevCaps-Funktion aufruft . Die Gerätefunktionen eines Telefons geben an, welche dieser Elemente für jedes im System vorhandene Telefongerät vorhanden sind und welche Funktionen sie haben. Obwohl diese Abstraktion stark auf reale Telefongeräte ausgerichtet ist, kann diese Abstraktion auch für andere Geräte eine sinnvolle Implementierung (oder Teilmenge davon) bereitstellen. Nehmen wir als Beispiel ein separates Headset, das direkt vom Computer angeschlossen und steuerbar ist und als Telefongerät betrieben wird. Hookswitch-Änderungen können durch Erkennung von Sprachenergie (Offhook) oder einer Stille (Onhook) ausgelöst werden; Das Klingeln kann durch die Generierung eines akustischen Signals in das Headset emuliert werden; eine Anzeige kann durch die Text-in-Sprache-Konvertierung emuliert werden.
Ein Telefongerät muss nicht in Hardware realisiert werden, sondern kann stattdessen in Software mit einer maus- oder tastaturgesteuerten grafischen Befehlsschnittstelle und dem Lautsprecher oder Soundsystem des Computers emuliert werden. Ein solches "Soft Phone" kann eine Anwendung sein, die TAPI verwendet. Es kann sich auch um einen Dienstanbieter handeln, der als Telefongerät aufgeführt werden kann, das für andere Anwendungen über die API verfügbar ist und als solche einem Telefongerätebezeichner zugewiesen wird.
Je nach Umgebung und Konfiguration können Telefonsätze gemeinsam genutzte Geräte zwischen der Anwendung und dem Switch sein. Einige kleinere Bereitstellungen werden in der API vorgenommen, bei der der Switch die Steuerung eines Telefongeräts durch die API vorübergehend anhalten kann.