Freigeben über


TSPI_lineMonitorMedia-Funktion (tspi.h)

Die funktion TSPI_lineMonitorMedia aktiviert und deaktiviert die Erkennung von Medientypen für den angegebenen Aufruf. Wenn ein Medientyp erkannt wird, wird eine LINE_MONITORMEDIA Nachricht an TAPI gesendet.

Syntax

LONG TSPIAPI TSPI_lineMonitorMedia(
  HDRVCALL hdCall,
  DWORD    dwMediaModes
);

Parameter

hdCall

Das Handle für den Aufruf, für den die Medienüberwachung festgelegt werden soll. Der Aufrufstatus von hdCall kann ein beliebiger Zustand mit Ausnahme des Leerlaufs sein.

dwMediaModes

Die zu überwachenden Medientypen. Der dwMediaModes-Parameter kann eine der LINEMEDIAMODE_ Konstanten aufweisen.

Der Wert 0 bricht die Überwachung aller Medientypen ab.

Rückgabewert

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

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

Hinweise

Der Dienstanbieter gibt LINEERR_INVALMEDIAMODE zurück, wenn die Liste der zu überwachenden Medientypen ungültige Informationen enthält.

Diese Funktion gibt null (erfolg) zurück, wenn die Medientypüberwachung ordnungsgemäß initiiert wurde, und nicht, wenn die Medientypüberwachung beendet wurde. Die Medienüberwachung für einen bestimmten Medientyp bleibt in Kraft, bis sie explizit deaktiviert wird, indem TSPI_lineMonitorMedia mit einem dwMediaModes-Parameter mit dem Medientyp null aufgerufen wird, oder bis der Aufruf in den Leerlauf übergibt.

TSPI_lineMonitorMedia ist in erster Linie ein Ereignisberichtsmechanismus. Der Medientyp eines Anrufs, wie in LINECALLINFO angegeben, wird von der Erkennung des Medientyps durch den Dienstanbieter nicht beeinflusst. Nur TAPI oder eine Clientanwendung kann den angegebenen Medientyp eines Aufrufs mithilfe von TSPI_lineSetMediaMode ändern. Die tatsächliche Verwendung eines bestimmten Medientyps erfolgt über separate Medienstream-APIs (z. B. Comm oder WAVE).

Die Standardmedienüberwachung, die vom Dienstanbieter für eine neue Aufrufdarstellung durchgeführt wird, entspricht der Union aller Medientypen, die von TSPI_lineSetDefaultMediaDetection angegeben werden. Kurz nachdem ein neuer Aufruf eingerichtet wurde, ruft TAPI in der Regel TSPI_lineMonitorMedia auf, um den Satz der für diesen Aufruf erkannten und gemeldeten Medientypen an die Vereinigung aller Medientypen zu reduzieren, die von den Clientanwendungen des Aufrufs gewünscht werden.

Der Dienstanbieter muss die Medienüberwachung abbrechen, wenn ein Anruf im Leerlauf erfolgt. TAPI muss die Union der Medientypen berechnen, die von allen Clients gewünscht werden, und das Ergebnis an diese Funktion übergeben. Der Dienstanbieter verwendet den Satz, der von TAPI an diese Funktion übergeben wird.

Obwohl diese Funktion in jedem Aufrufzustand aufgerufen werden kann, kann der Medientyp eines Aufrufs in der Regel nur erkannt werden, während sich der Aufruf in bestimmten Aufrufzuständen befindet. Diese Zustände können gerätespezifisch sein. In ISDN kann beispielsweise eine Nachricht den Medientyp des Mediendatenstroms angeben, bevor der Mediendatenstrom vorhanden ist. Ebenso können charakteristische Klingeln oder die aufgerufenen ID-Informationen über den Anruf verwendet werden, um den Medientyp eines Anrufs zu identifizieren. Andernfalls muss der Anruf möglicherweise angenommen werden (Anruf im Zustand verbunden ), damit ein Dienstanbieter den Medientyp des Anrufs durch Filtern des Mediendatenstroms bestimmen kann. Da das Filtern des Mediendatenstroms eines Aufrufs einen Rechenaufwand mit sich bringt, verwendet TAPI dieses Verfahren in der Regel, um die Medienüberwachung zu deaktivieren, wenn sie nicht erforderlich ist.

Da die von TSPI_lineMonitorMedia aktivierte Medienmoduserkennung als schreibgeschützter Vorgang des Mediendatenstroms des Aufrufs implementiert wird, ist sie nicht störend. Aufgrund der Einstellung TSPI_lineMonitorMedia werden keine Signale an die Linie gesendet.

In Bezug auf den übergebenen Medientyp garantiert TAPI, dass keine reservierten Bits festgelegt sind. Der Dienstanbieter muss weitere Gültigkeitsprüfungen für die Medientypen durchführen, z. B. überprüfen, ob Medientypen tatsächlich vom Dienstanbieter unterstützt werden.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile tspi.h

Weitere Informationen

LINECALLINFO

LINEDEVCAPS

LINEMEDIAMODE_ Konstanten

LINE_MONITORMEDIA

TSPI_lineConditionalMediaDetection

TSPI_lineGetDevCaps

TSPI_lineSetDefaultMediaDetection

TSPI_lineSetMediaControl

TSPI_lineSetMediaMode