Zum Hauptinhalt springen

TapiInfo

Mit diesem Befehl werden Informationen zu einem TAPI-Objekt abgefragt. In (obj) wird die Call-ID des Anrufs übergeben. Die Call-ID wird bei dem Ereignis EvtTapi vom System übergeben. Das Ergebnis wird in (var2) zurückgegeben und ist vom Typ alpha.

Soll der Status ermittelt werden, muss an Stelle der Call-ID der Deskriptor des TAPI-Gerätes übergeben werden. Als (var2) muss der Deskriptor einer Cte-Liste übergeben werden.

In (int1) wird der Informationstyp angegeben. Folgende Konstanten können hier übergeben werden:

  • _TapiInfoCallerID

    Es wird die Kennung (Rufnummer) des Anrufers ermittelt. Das Ergebnis entspricht der im EvtTapi übergebenen Nummer (aCallerID).

  • _TapiInfoCallerIDName

    Es wird der Name des Anrufers ermittelt.

  • _TapiInfoCalledID

    Es wird die Kennung (Rufnummer) des angerufenen ermittelt. Das Ergebnis entspricht der im EvtTapi übergebenen Nummer (aCalledID).

  • _TapiInfoCalledIDName

    Es wird der Name des Angerufenen ermittelt.

  • _TapiInfoConnectedID

    Es wird die Kennung (Rufnummer) des verbundenen Teilnehmers ermittelt. Die Abfrage ist erst nach erfolgreichem Zustandekommen einer Verbindung (_TapiCallStateConnected) sinnvoll.

  • _TapiInfoConnectedIDName

    Es wird der Name des verbundenen Teilnehmers ermittelt. Die Abfrage ist erst nach erfolgreichem Zustandekommen einer Verbindung (_TapiCallStateConnected) sinnvoll.

  • _TapiInfoStatus

    Soll der Status eines mit ``TapiListen() überwachten Gerätes abgefragt werden, muss der Deskriptor des Tapi-Gerätes als (obj) übergeben werden. Als (var2) muss der Deskriptor einer Cte-Liste übergeben werden. Die Liste ist nach dem Aufruf um ein Cte-Item pro Anwendung, die das gleiche TAPI-Gerät geöffnet hat, erweitert.

    Die in der Liste enthaltenen CteItem-Objekte haben die folgenden Eigenschaften:

    • Name - Name der Anwendung, der z. B. zur Anzeige verwendet werden kann. Für CONZEPT 16 beinhaltet die Eigenschaft "CONZEPT 16 TAPI".
    • Custom - Nicht vorbelegt. Die Eigenschaft kann verwendet werden.
    • ID - Nicht vorbelegt. Die Eigenschaft kann verwendet werden.
    • TapiNameComputer - Rechnername, auf dem die Anwendung läuft.
    • TapiUserName - Name des Benutzers in dessen Kontext die Anwendung läuft.
    • TapiModuleFilename - Name des Moduls der Anwendung (bei CONZEPT 16 "c16_objw.dll").
    • TapiOwnerRequest - Gibt an, ob versucht wurde das TAPI-Gerät mit Besitzrechten zu öffnen (true) oder nicht (false).

    Die Eigenschaften können nur gelesen werden, lediglich die Eigenschaften Name, Custom und ID können gelesen und geschrieben werden.

    Wird der Typ (_HdlType) bzw. der Subtyp (_HdlSubType) des Deskriptors der Listen-Items mit HdlInfo() ermittelt, wird _HdlTapi bzw. _TapiHdlStatusItem zurückgegeben.

Beispiel:

tDataListTapiApps # $dlTapiApps;
tStatusList # CteOpen(_CteList);
tError # Device->TapiInfo(_TapiInfoStatus, tStatusList);

if (tError = _ErrOk)
{
// Liste wurde um CteItem-Objekte erweitert
for tItem # tStatusList->CteRead(_CteFirst);
loop tItem # tStatusList->CteRead(_CteNext, tItem);
while (tItem != 0)
{
tLineNo # tDataListTapiApps->WinLstDatLineAdd(tItem->spName);
tDataListTapiApps->WinLstCellSet(tItem->spTapiNameComputer, 2, tLineNo);
tDataListTapiApps->WinLstCellSet(tItem->spTapiUserName, 3, tLineNo);
tDataListTapiApps->WinLstCellSet(tItem->spTapiModuleFilename, 4, tLineNo);
tDataListTapiApps->WinLstCellSet(tItem->spTapiOwnerRequest, 5, tLineNo);
}

tStatusList->CteClear(true);
tStatusList->CteClose();
}
info

Ob die Informationen ermittelt werden können, hängt davon ab, ob der TAPI-Treiber die Informationen zu Verfügung stellt. Hat der TAPI-Treiber die jeweiligen Informationen, dann ist zu beachten, dass diese vom Zustand des Anrufs abhängen. _TapiInfoConnectedID und _TapiInfoConnectedIDName sind z. B. nur im Zustand _TapiCallStateConnected vorhanden.

Der Rückgabewert ist ein Fehlerwert (_ErrTapi...) oder _ErrOk, wenn der Aufruf erfolgreich war. In diesem Fall kann (var2) jedoch trotzdem leer sein.

Mögliche Laufzeitfehler: