Zur Realisierung der unterschiedlichen Dienste stellt die TAPI verschiedene Objekte zur Verfügung, mit denen jede beliebige Telefonieumgebung in der realen Welt auf das TAPI-Modell abgebildet werden kann. Die Applikationen und das TSPI (Telephony Service Provider Interface), welches die Schnittstelle der TAPI zu den jeweiligen Treibern (TSPs) darstellt, verwenden daher ebenfalls diese Objekte, um mit der TAPI zu kommunizieren. Im wesentlichen besteht das Objektmodell aus folgenden vier Objekten:
- Line
Mit Hilfe des Line-Objektes wird ein bestimmtes Telefonie-Endgerät repräsentiert, wie z.B. ein Modem, ein Fax-Gerät, ein Telefon oder auch eine ISDN-Karte. Dieses Endgerät ist über eine Telefonleitung mit dem Telefonnetzwerk verbunden. Allerdings muß das Endgerät nicht notwendigerweise auch mit dem Computer verbunden sein, auf dem die Applikation läuft, die dieses mittels TAPI verwendet, sondern es ist durchaus möglich, das die TAPI-Anwendung über einen separaten Server mit diesem Endgerät kommuniziert, der mit diesem auf physikalische Art und Weise über irgendeine Schnittstelle verbunden ist. Eine Line wird von der TAPI dazu verwendet, die Telefoniedienste auf dem entsprechenden Gerät auszuführen, was letztendlich von dem TSP (Telephony Service Provider) dem Endgerät über passende Befehlsfolgen mitgeteilt wird.
Beispielhaft kann man sich einen PC vorstellen, der mit mehreren Hardwarekomponenten zur Kommunikation mit der Außenwelt verbunden ist. Dabei wird jedem Endgerät jeweils eine Line zur Steuerung zugeordnet, wie dies in der folgenden Abbildung veranschaulicht wird.

- Zuordnung von Lines und unterschiedlichen Hardwarekomponenten
- Phone
Ein Phone-Objekt repräsentiert die eigentliche Hardware, die zum Telefonieren benutzt wird, also z.B. das analoge Telefon oder die ISDN-Karte in einem PC. Dabei werden die Hardware und deren Eigenschaften auf ein virtuelles Telefon abgebildet, welches z.B. folgende Elemente zur Steuerung und Anzeige besitzen kann:
- einen Hörer
- ein Mikrofon
- einen Lautsprecher
- eine Klingel
- ein Display zur Anzeige von Meldungen
- verschiedene Knöpfe
- Lampen und LEDs zum Anzeigen verschiedener Zustände
- einen Speicher, z.B. für Rufnummern
Obwohl die ISDN-Karte in der realen Welt sicherlich keinen Telefonhörer oder sogar Tasten zum Wählen der Nummer wie das analoge Telefon besitzt, können diese jedoch von einem entsprechenden Phone-Objekt bereitgestellt werden. Das Abheben und Auflegen des Hörers oder das Wählen über die virtuelle Tastatur der ISDN-Karte könnte dann über einen Dialog auf dem Bildschirm des Computers erfolgen; beim Eintreffen eines Anrufes würde dann z.B. ein Signalton ertönen oder ebenfalls ein Dialog den Anwender auf den Anrufer aufmerksam machen. Zusätzlich besteht die Möglichkeit, über das virtuelle Phone die entsprechende Hardware zu programmieren, wie z.B. Rufnummern, Tastenbelegungen oder die Lautstärke des Hörers.
-
Adresse
Eine Adresse stellt im herkömmlichen Sinne die Rufnummer dar, unter der ein Gesprächspartner zu erreichen ist. Daher kann ein einfacher analoger Telefonanschluß mittels einer Adresse zur Verwendung mit der TAPI realisiert werden, während z.B. ein ISDN-Anschluß gleich drei Rufnummern besitzt, demnach also auch drei Adressen. Es fallen aber auch Internet- und LAN-Adressen unter die Definition einer TAPI-Adresse.
-
Call
Ein Call-Objekt stellt eine Telefonverbindung zwischen zwei oder auch mehreren Telefonie-Endgeräten, genauer gesagt Adressen, dar. Während die oben beschriebenen Objekte ausschließlich statischer Natur waren, d.h. ihre Eigenschaften und Verhalten im wesentlichen unverändert bleiben, ist ein Call-Objekt dynamisch. Mit jedem Aufbau einer neuen Telefonverbindung und mit jedem Eintreffen eines neuen Anrufes wird von der TAPI bzw. vom Treiber ein neues Call-Objekt angelegt. Bei Beendigung der Verbindung wird dieses dann wieder entfernt, sofern es von der Applikation nicht noch weiter benötigt wird. Das Call-Objekt nimmt während seiner Lebensdauer bestimmte Zustände ein, welche den Status der Verbindung beschreiben. Die Anzahl der Calls, welche gleichzeitig nebeneinander existieren können, hängt von der verwendeten Hardware und deren Fähigkeiten ab. Ein Call ist immer einer bestimmten Adresse und diese wiederum einer bestimmten Line zugeordnet, so daß sich das Objektmodell hierarchisch gliedert, was durch die folgende Abbildung verdeutlicht wird.

- Unterschiedliche Konstellationen von Lines, Adressen und Calls


