Freigeben über


TSPI_lineGenerateDigits-Funktion (tspi.h)

Die TSPI_lineGenerateDigits-Funktion initiiert die Generierung der angegebenen Ziffern für den angegebenen Aufruf als In-Band-Töne unter Verwendung des angegebenen Signalisierungsmodus. Das Aufrufen dieser Funktion bei laufender Ziffern- oder Tongenerierung bricht die aktuelle Ziffern- oder Tongenerierung ab. Das Übergeben eines NULL-Werts für lpsDigits generiert keine neuen Ziffern.

Hinweis Pro Anruf kann jeweils nur eine Anforderung der In-Band-Generation (Tongenerierung oder Zifferngenerierung) ausgeführt werden.
 

Syntax

LONG TSPIAPI TSPI_lineGenerateDigits(
  HDRVCALL hdCall,
  DWORD    dwEndToEndID,
  DWORD    dwDigitMode,
  LPCWSTR  lpszDigits,
  DWORD    dwDuration
);

Parameter

hdCall

Der Handle für den Aufruf, für den die Zifferngenerierung erfolgen soll.

dwEndToEndID

Dieser eindeutige Anforderungsbezeichner sollte vom Dienstanbieter gespeichert und nach Abschluss der Zifferngenerierung als dwParam2 an die LINEEVENT-Prozedur zurückgegeben werden.

dwDigitMode

Das Format, das zum Signalisieren dieser Ziffern verwendet werden soll. Dieser Parameter verwendet nur eine der LINEDIGITMODE_ Konstanten.

lpszDigits

Ein Zeiger auf einen Unicode-Zeichenpuffer mit NULL-Beendigung, der die zu generierenden Ziffern enthält. Ein Komma fügt eine zusätzliche Verzögerung zwischen der Signalisierung der vorherigen und nächsten Ziffern ein, die es trennt. Die Dauer dieser Pause ist konfigurationsdefiniert. Die Gerätefunktionen der Leitung geben an, wie lange diese Dauer ist. Mehrere Kommas können verwendet werden, um längere Pausen einzuschleusen. Ungültige Ziffern werden während der Generierung ignoriert, anstatt als Fehler gemeldet zu werden.

dwDuration

Gibt sowohl die Dauer von DTMF-Ziffern als auch puls- und DTMF-Zwischenstellabstand in Millisekunden an. Ein Wert von 0 verwendet einen Standardwert. Der dwDuration-Parameter muss sich innerhalb des bereichs befinden, der von MinDialParams zu MaxDialParams in LINEDEVCAPS angegeben wird. Wenn außerhalb des Bereichs liegt, wird der tatsächliche Wert vom Dienstanbieter auf den nächstgelegenen Wert im Bereich festgelegt. Dieser Parameter wird nicht von TAPI überprüft, wenn diese Funktion aufgerufen wird.

Rückgabewert

Gibt null zurück, wenn die Funktion erfolgreich ist, oder eine Fehlernummer, wenn ein Fehler auftritt. Mögliche Rückgabewerte sind wie folgt:

LINEERR_INVALCALLHANDLE, LINEERR_NOMEM, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALDIGITMODE, LINEERR_OPERATIONFAILED, LINEERR_RESOURCEUNAVAIL, LINEERR_RESOURCEUNAVAIL.

Hinweise

Der Anrufstatus von hdCall kann ein beliebiger Zustand sein.

Die TSPI_lineGenerateDigits-Funktion gilt als erfolgreich abgeschlossen, wenn die Zifferngenerierung erfolgreich initiiert wurde. nicht, wenn alle Ziffern generiert werden.

Nachdem alle Ziffern in lpsDigits generiert wurden oder nachdem die Zifferngenerierung abgebrochen oder abgebrochen wurde, wird eine LINE_GENERATE Nachricht an TAPI gesendet.

Hinweis Pro Anruf darf nur eine Inbandgenerierungsanforderung (Tongenerierung oder Zifferngenerierung) ausgeführt werden. Dies bedeutet, dass die Zifferngenerierung bei einem Aufruf entweder TSPI_lineGenerateDigits oder TSPI_lineGenerateTone die Zifferngenerierung annulliert. Der Dienstanbieter muss jede laufende Zifferngenerierung beenden, wenn eine nachfolgende TSPI_lineGenerateDigits oder TSPI_lineGenerateTone aufgerufen wird. Wenn Sie TSPI_lineGenerateDigits aufrufen, wenn lpszDigits auf NULL festgelegt ist, wird jede aktuelle Generierung von Ziffern (oder Ton) abgebrochen.
 
Die entsprechende Funktion auf TAPI-Ebene enthält nicht den formalen Parameter dwEndToEndID. Auf dieser Ebene gibt es keine End-to-End-Markierung. TAPI verwendet End-to-End-Markierungen auf TSPI-Ebene, um eine TSPI_lineGenerateDigits Anforderung von einer anderen zu unterscheiden.

Anforderungen

   
Zielplattform Windows
Kopfzeile tspi.h

Weitere Informationen

LINEDEVCAPS

LINEDIGITMODE_ Konstanten

LINEEVENT

LINE_GENERATE

TSPI_lineGenerateTone