Freigeben über


linePickup-Funktion (tapi.h)

Die linePickup-Funktion übernimmt eine Anrufwarnung an der angegebenen Zieladresse und gibt ein Anrufhandle für den erfassten Aufruf zurück. Wenn für den Parameter lpszDestAddress mit NULL aufgerufen wird, wird eine Gruppenabholung durchgeführt. Falls für das Gerät erforderlich, gibt lpszGroupID den Gruppenbezeichner an, zu dem die Warnungsstation gehört.

Syntax

LONG linePickup(
  HLINE   hLine,
  DWORD   dwAddressID,
  LPHCALL lphCall,
  LPCSTR  lpszDestAddress,
  LPCSTR  lpszGroupID
);

Parameter

hLine

Handle zum Offenleitungsgerät, auf dem ein Anruf aufgenommen werden soll.

dwAddressID

Adresse auf hLine , an der die Abholung erfolgen soll. Ein Adressbezeichner ist einer Adresse dauerhaft zugeordnet; Der Bezeichner bleibt über Betriebssystemupgrades hinweg konstant.

lphCall

Zeiger auf einen Speicherort, an dem das Handle zum aufgenommenen Aufruf zurückgegeben wird. Die Anwendung ist der anfängliche alleinige Besitzer des Aufrufs.

lpszDestAddress

Zeiger auf einen Null-Endzeichenpuffer, der die Adresse enthält, deren Aufruf abgerufen werden soll. Die Adresse hat das standardmäßige wählbare Adressformat.

lpszGroupID

Zeiger auf einen Zeichenpuffer mit NULL-Beendigung, der den Gruppenbezeichner enthält, zu dem die Warnungsstation gehört. Dieser Parameter ist für einige Schalter erforderlich, um Aufrufe außerhalb der aktuellen Abholgruppe aufzunehmen.

Der lpszGroupID-Parameter kann selbst mit einem NULL-Zeiger für lpszDestAddress angegeben werden. Alternativ kann lpszGroupID zusätzlich zu lpszDestAddress angegeben werden, falls dies vom Gerät erforderlich ist.

Rückgabewert

Gibt einen positiven Anforderungsbezeichner zurück, wenn die Funktion asynchron abgeschlossen wird, oder eine negative Fehlernummer, wenn ein Fehler auftritt. Der dwParam2-Parameter der entsprechenden LINE_REPLY Meldung ist null, wenn die Funktion erfolgreich ist, oder es ist eine negative Fehlernummer, wenn ein Fehler auftritt. Mögliche Rückgabewerte sind:

LINEERR_INVALADDRESS, LINEERR_NOMEM, LINEERR_INVALADDRESSID, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALGROUPID, LINEERR_OPERATIONFAILED, LINEERR_INVALLINEHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_UNINITIALIZED.

Hinweise

Wenn ein Anruf erfolgreich angenommen wurde, wird die Anwendung von der LINE_CALLSTATE Meldung über Anrufstatusänderungen benachrichtigt. Die LINECALLINFO-Struktur liefert Informationen über den aufgenommenen Anruf. Der Grund für den Anruf wird als Abholung aufgeführt. Diese Struktur ist mit lineGetCallInfo verfügbar.

Wenn LINEADDRCAPFLAGS_PICKUPCALLWAIT TRUE ist, kann linePickup verwendet werden, um einen Anruf aufzunehmen, für den der Benutzer das Wartesignal hörbar erkannt hat, für den der Anbieter die Erkennung jedoch nicht durchführen kann. Dadurch erhält der Benutzer einen Mechanismus zum "Annehmen" eines wartenden Anrufs, obwohl der Dienstanbieter das Wartesignal des Anrufs nicht erkennen konnte. Sowohl die Zeigerparameter lpszDestAddress als auch die lpszGroupID-Parameter müssen NULL sein, um einen Aufruf mit Warteaufruf aufzunehmen. Die linePickup-Funktion erstellt ein neues Aufrufhandle für den wartenden Aufruf und übergibt dieses Handle an den Benutzer. Der dwAddressID-Parameter ist am häufigsten 0 (insbesondere in einzeiligen Wohnfällen).

Nachdem linePickup verwendet wurde, um den zweiten Aufruf aufzunehmen, kann lineSwapHold verwendet werden, um zwischen ihnen zu wechseln. Die lineDrop-Funktion kann verwendet werden, um eine (und auf die andere umschalten) usw. zu löschen. Wenn der Benutzer den aktuellen Anruf ablegen und den zweiten Anruf annehmen möchte, sollte er lineDrop aufrufen, wenn er den Warteton des Anrufs erhält, warten, bis der zweite Anruf klingelt, und dann lineAnswer für das neue Anrufhandle aufrufen. Das LINEADDRFEATURE_PICKUP-Flag im dwAddressFeatures-Element in LINEADDRESSSTATUS gibt an, wann die Abholung tatsächlich möglich ist.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile tapi.h
Bibliothek Tapi32.lib
DLL Tapi32.dll

Weitere Informationen

LINEADDRESSSTATUS

LINECALLINFO

LINE_CALLSTATE

LINE_REPLY

Übersicht über die Abholung

Ergänzende Zeilendienstfunktionen

ÜBERSICHT ÜBER TAPI 2.2-Referenz

lineAnswer

lineDrop

lineGetCallInfo

lineSwapHold