LINE _ NEWCALL-Nachricht

Die TSPI LINE _ NEWCALL-Nachricht wird immer dann an die LINEEVENT-Rückruffunktion gesendet, wenn ein neuer Aufruf, von dem TAPI nicht stammt, in einer Zeile eingeht, die TAPI geöffnet hat. Dies muss die erste Nachricht sein, die in Bezug auf diesen Aufruf gesendet wird. TAPI schreibt das opake htCall-Handle in den Vom Dienstanbieter übergebenen Speicherort als dwParam2. Dadurch erhält der Dienstanbieter den htCall-Wert, der in nachfolgenden Nachrichten verwendet werden soll.

            

Parameter

htLine

Das nicht transparente TAPI-Objekthandle für das Liniengerät.

htCall

Nicht verwendet.

dwMsg

Der Wert LINE _ NEWCALL.

dwParam1

Das nicht transparente Handle des Dienstanbieters für den Aufruf vom Typ HDRVCALL. TAPI übergibt diesen Wert als hdCall-Parameter, um den Aufruf in nachfolgenden Prozeduren zu identifizieren, die für den Aufruf aufgerufen werden.

dwParam2

Ein Zeiger vom Typ LPHTAPICALL, der auf einen HTAPICALLzeigt. TAPI schreibt das nicht transparente TAPI-Handle für den Aufruf an die angegebene Position. Der Dienstanbieter muss diesen Wert speichern und als htCall-Parameter übergeben, um den Aufruf in nachfolgenden Ereignissen zu identifizieren, die er für den Aufruf meldet.

Dieser Parameter kann auch den Wert NULL abrufen (siehe abschnitt "Hinweise").

dwParam3

Nicht verwendet.

Hinweise

Der Dienstanbieter sollte die LINE _ CALLSTATE-Nachricht als nächste Nachricht für diesen Aufruf senden. Das LINE _ NEWCALL-Ereignis ist ungewöhnlich, da es auch einen Wert zurück an den Dienstanbieter übergibt.

Diese Funktion meldet alle neuen Aufrufe, die vom Dienstanbieter stammen (eingehend, ausgehend, am Telefon initiiert usw.), für die TAPI und der Dienstanbieter noch keine nicht transparenten Handles ausgetauscht haben. Die Handles werden ausgetauscht, sodass TAPI und der Dienstanbieter anschließend Anforderungen stellen und Ereignisse im Zusammenhang mit dem Aufruf melden können. Da diese neuen Aufrufe nicht notwendigerweise eingehend sind, können sich die Aufrufe anfänglich in einem beliebigen Zustand befinden, nicht unbedingt im Angebotszustand. Wenn der Dienstanbieter startet und feststellt, dass mindestens ein Aufruf in der Zeile bereits aktiv ist, informiert er TAPI über diese mit LINE _ NEWCALL-Nachrichten, gefolgt von LINE _ CALLSTATE-Nachrichten, die den aktuellen Zustand angeben. Ein neuer ausgehender Anruf, der vom Benutzer auf dem Telefon initiiert wurde, wird mit einer LINE _ NEWCALL-Nachricht gemeldet, und die anfängliche LINE _ CALLSTATE-Nachricht gibt an, dass sich der Anruf im DIALTONE-Zustand befand (und dann von dort aus fortgesetzt wird).

Wenn der Dienstanbieter innerhalb eines sehr kurzen Zeitraums (während desselben Interruptzyklus) eine große Anzahl von Aufrufen an TAPI übergibt, kann TAPI bei der Verarbeitung dieser Aufrufe wieder protokolliert werden. In diesem Fall signalisiert TAPI dem Dienstanbieter, kurz zu warten, bevor weitere Aufrufe gesendet werden. Dies wird signalisiert, indem anstelle eines gültigen HTAPICALL-Wertsein Wert von NULL in den Speicherort geschrieben wird, auf den der dwParam2-Parameter von LINE _ NEWCALL zeigt. Dies weist darauf hin, dass der Versuch, das neu angebotene Aufrufhandle zu verarbeiten, nicht erfolgreich war, wahrscheinlich aufgrund einer vorübergehenden Unfähigkeit, Arbeitsspeicher zu belegen. Der Dienstanbieter kann reagieren, indem er den Aufruf verwirft oder die LINE _ NEWCALL-Nachricht nach einer Planungsverzögerung erneut eingibt (während dieser Zeit sollte der Dienstanbieter dem Prozessor die Verarbeitung anderer ausstehender Aktionen ermöglichen). In jedem Fall können keine weiteren Nachrichten über den neuen Aufruf an TAPI übergeben werden, bis der Handleaustausch erfolgreich war. Wenn der Speicherort, auf den dwParam2 zeigt, einen Wert ungleich NULL abruft, weiß der Dienstanbieter, dass dieser Wert ein gültiges HTAPICALL-Handle für den Aufruf ist.

Es gibt keine direkt entsprechende Meldung auf TAPI-Ebene. Diese Nachricht wird auf TSPI-Ebene verwendet, um eindeutig und eindeutig einen neuen eingehenden Aufruf von TAPI einzuführen und den nicht transparenten TAPI-Bezeichner für den Aufruf abzurufen.

Anforderungen

Anforderung Wert
TAPI-Version
Erfordert TAPI 2.0 oder höher
Header
Tspi.h

Siehe auch

LINE _ CALLSTATE

LINEEVENT