Bei dem Telephony Application Programming Interface (TAPI) handelt es sich um eine Programmierschnittstelle für Telefonieanwendungen. Diese wurde 1993 von Microsoft und Intel eingeführt und ist seit Windows 95 fest im Betriebssystem verankert. CONZEPT 16 bietet Ihnen die Möglichkeit die Funktionen der TAPI-Schnittstelle unter Verwendung der TAPI-Befehle zu nutzen.
Mit den TAPI-Befehlen können Funktionen der TAPI-Schnittstellen benutzt werden. Diese Schnittstelle teilt sich in zwei Ebenen: Die Schnittstelle des Betriebssystems und die Gerätetreiber. Mit dem Befehl TapiOpen()
wird die Schnittstelle initialisiert und der Deskriptor einer Liste mit Gerätetreibern zurückgegeben. Diese Liste und die Gerätetreiber selbst können verwendet werden, bis mit TapiClose()
die Liste geschlossen wird.
Eingehende Anrufe
Sollen eingehende Anrufe erkannt werden, wird der Befehl TapiListen()
benötigt. Diesem Befehl wird der Deskriptor eines Gerätetreibers und eines Fensters übergeben. Kommt nun auf diesem Gerätetreiber ein Gespräch an, so wird das Ereignis EvtTapi
des Fensters ausgelöst. Die Überwachung bleibt so lange erhalten, bis diese durch TapiListen()
wieder deaktiviert wird.
Sollen mit einer aktiven Verbindung weitere Aktionen (Konferenzschaltung, Vermitteln) durchgeführt werden, so sind Besitzrechte für diese Verbindung notwendig. Diese Rechte werden über die Eigenschaft TapiFlags
gesteuert. Standardmäßig werden Besitzrechte angefordert. Sollen Verbindungen über ein TAPI-Gerät nur überwacht werden (Monitoring), muss das Flag _TapiListenMonitor
eingetragen werden, somit wird das nächste TapiListen()
ohne Besitzrechte an den Verbindungen durchgeführt. Sind keine Besitzrechte vorhanden können folgende Befehle nicht durchgeführt werden:
TapiCall()
mit_TapiCallOpAnswer
,_TapiCallOpDrop
,_TapiCallOpHold
oder_TapiCallOpUnhold
TapiForward()
TapiConference()
,TapiConferenceDial()
,TapiConferenceCommit()
Ausgehende Anrufe
Um eine Nummer zu wählen wird der Befehl TapiDial()
verwendet. Das Format des zu übergebenen Wählstrings hängt im wesentlichen von der Implementation des Gerätetreibers ab. In der Regel werden hier nur Zeichenketten übergeben, die ausschließlich aus Ziffern bestehen.