Share via


ITAutomatedPhoneControl::SelectCall-Methode (tapi3if.h)

Die SelectCall-Methode wählt das aktuelle Telefonobjekt im Call-Objekt aus, auf das der pCall-Parameter verweist.

Syntax

HRESULT SelectCall(
  [in] ITCallInfo   *pCall,
  [in] VARIANT_BOOL fSelectDefaultTerminals
);

Parameter

[in] pCall

Zeiger auf die ITCallInfo-Schnittstelle .

[in] fSelectDefaultTerminals

Wenn VARIANT_TRUE, verwenden Sie Standardterminals. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

Rückgabewert

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlerwert zurückgegeben.

Hinweise

Die Anwendung muss sowohl für den Anruf als auch für das Telefon über Besitzerrechte verfügen, damit diese Methode erfolgreich ist. Wenn das Telefon noch nicht mit Besitzerberechtigungen geöffnet ist, schlägt diese Methode fehl.

Wenn der Parameter fSelectDefaultTerminals auf VARIANT_TRUE festgelegt ist, ruft diese Methode alle Standardterminals ab, die dem Telefon zugeordnet sind, und versucht, sie beim Anruf auszuwählen. Wenn die Instanziierung eines der Terminals fehlschlägt oder wenn die Auswahl eines der Terminals für den Anruf fehlschlägt, gibt die gesamte SelectCall-Methode einen Fehler zurück, und der Anruf wird auf dem Telefon nicht ausgewählt. Wenn dies nicht das erforderliche Verhalten für eine Anwendung ist, sollte die Anwendung VARIANT_FALSE für den fSelectDefaultTerminals-Parameter übergeben und die Terminalauswahl separat behandeln.

Nach erfolgreichem Abschluss dieser Methode behält das phone-Objekt einen Verweis auf das Aufrufobjekt (d. a. es ruft die AddRef-Methode auf ITCallInfo auf).

Für Windows XP kann jeweils nur ein Anruf auf einem Telefon ausgewählt werden. Zukünftige Versionen von TAPI unterstützen möglicherweise die gleichzeitige Auswahl mehrerer Anrufe für die Verwendung mit Telefonen, die mehrere Anrufdarstellungen unterstützen.

Beachten Sie, dass ein Anruf auf zwei Arten deaktiviert werden kann: (1) die Anwendung kann ITAutomatedPhoneControl::UnselectCall aufrufen, oder (2) das Telefonobjekt selbst kann ITAutomatedPhoneControl::UnselectCall aufrufen. Informationen dazu, wann dies geschieht, finden Sie in der folgenden Liste.

Nachdem diese Methode erfolgreich abgeschlossen wurde, wird die folgende Behandlung für den ausgewählten Aufruf ausgeführt:

  • Wenn das Telefon eingeschaltet wird, ruft das telefonobjekt ITBasicCallControl::D isconnect bei jedem derzeit verarbeiteten Anruf auf, der sich noch nicht im CS_DISCONNECTED Anrufzustand befindet.
  • Wenn ein ausgewählter Anruf den CS_DISCONNECTED Anrufstatus erreicht, hebt das Telefonobjekt die Auswahl des Anrufs mithilfe der ITAutomatedPhoneControl::UnselectCall-Methode automatisch auf .
  • Wenn das Telefon geschlossen wird, wird jeder ausgewählte Anruf von diesem Telefon automatisch deaktiviert.
  • Wenn das Telefon ausgeschaltet wird oder ein Anruf ausgewählt wird, wenn das Telefon offhook ist, ruft das Telefonobjekt ITBasicCallControl::Answer für den derzeit behandelten Anruf an, wenn es sich im CS_OFFERING Anrufzustand befindet.
  • Das Telefonobjekt ruft ITAutomatedPhoneControl::StartTone( PT_RINGBACK, 0 ) selbst auf, wenn ein Anruf im CS_INPROGRESS Anrufzustand ausgewählt ist und das Telefon offhook ist, oder wenn ein auf dem Telefon ausgewählter Anruf in den CS_INPROGRESS Anrufzustand wechselt und das Telefon offhook ist.
  • Das Telefonobjekt ruft ITAutomatedPhoneControl::StopTone selbst auf, wenn ein Anruf im CS_CONNECTED Anrufstatus ausgewählt ist oder wenn ein auf dem Telefon ausgewählter Anruf in den CS_CONNECTED Anrufzustand wechselt.
  • Das Telefonobjekt ruft ITAutomatedPhoneControl::StartRinger( 0, 0 ) auf sich selbst auf, wenn ein Anruf im CS_OFFERING, CS_INPROGRESS oder CS_CONNECTED Anrufzustand ausgewählt ist und das Telefon onhook ist. Dies tritt auch auf, wenn ein auf dem Telefon ausgewählter Anruf in den CS_OFFERING, CS_INPROGRESS oder CS_CONNECTED Anrufzustand wechselt und das Telefon onhook ist.
Abhängig von den Umständen führt das Telefonobjekt eine der folgenden Aktionen aus, wenn ein Anruf im CS_DISCONNECTED Anrufzustand ausgewählt wird oder wenn ein auf dem Telefon ausgewählter Anruf in den CS_DISCONNECTED Anrufzustand wechselt.

Anforderungen

   
Zielplattform Windows
Kopfzeile tapi3if.h (Tapi3.h einschließen)
Bibliothek Uuid.lib
DLL Tapi3.dll

Weitere Informationen

ITAutomatedPhoneControl

ITBasicCallControl

ITCallInfo