Gesamtvergleich mit TAPI
Die TSPI-Spezifikation ist eng mit den Spezifikationen für TAPI 2.2 (TAPI/C) verknüpft. Die meisten Funktionen in einer verfügen über eine entsprechende Funktion in der anderen. Die übliche Entsprechung lautet wie folgt:
- TSPI-Funktionen haben die gleichen Namen wie TAPI-Funktionen, mit der Ausnahme, dass ihnen "TSPI" voraus _ ist. Beispielsweise entspricht die TAPI-Funktion lineAccept der TSPI-Funktion TSPI _ lineAccept.
- Prozeduren, die einen asynchronen Vorgang zulassen, fügen einen dwRequestID-Parameter vom Typ DRV _ REQUESTID als ersten Parameter ein. Dieser Parameter gibt den Wert an, der zurückgegeben werden soll, um einen asynchronen Vorgang anzugeben und asynchrone Vervollständigung zu melden.
- hCall-Parameter des Typs HCALL werden durch hdCall-Parameter vom Typ HDRVCALLersetzt, die das Handle des Dienstanbieters für den Aufruf angeben.
- hLine-Parameter vom Typ HLINE werden durch hdLine-Parameter vom Typ HDRVLINEersetzt, die das Handle des Dienstanbieters für die Zeile angeben.
- hPhone-Parameter vom Typ HPHONE werden durch hdPhone-Parameter vom Typ HDRVPHONEersetzt, die das Handle des Dienstanbieters für das Telefon angeben.
- Prozeduren, die einen neuen Aufruf erstellen, z. B. TSPI _ lineMakeCall,ersetzen einen einzelnen lphCall-Parameter durch zwei Parameter: einen htCall vom Typ HTAPICALL-Parameter, der das TAPI-Handle für den Aufruf übergibt, und einen lphdCall vom Typ LPHDRVCALL, der den Speicherort angibt, an den der Dienstanbieter sein neues Handle für den Aufruf schreiben muss. Eine ähnliche Aufteilung der Parameter erfolgt in TSPI _ lineOpen und TSPI _ phoneOpen.
- Auf TSPI-Ebene gibt es keine "Berechtigung", die Gerätehandles zugeordnet ist. Darüber hinaus hat auf API-Ebene jede Anwendung, die über ein Gerät oder ein Aufrufhand handle verfügt, ein anderes Handle, aber TAPI führt diese zu einem einzelnen Handle aufseiten des Dienstanbieters zusammen. Daher werden die Fehlercodes und Statusmeldungen im Zusammenhang mit Berechtigungen und der Anzahl von Clients, die ein Gerät verwenden, nicht auf TSPI-Ebene angezeigt.
Die TAPI-Funktionen ordnen dem Satz von TSPI-Funktionen nicht eins zu eins zu. Insbesondere Funktionen im Zusammenhang mit Berechtigungen, telefonnummernübersetzung und Interapplication Communication werden von TAPI verarbeitet und haben keine entsprechende Funktion in TSPI. Andere Funktionen, z. B. diejenigen, die für die Konfiguration und Initialisierung des Dienstanbieters verwendet werden, verfügen über keine entsprechenden Funktionen in TAPI.