Share via


fonction lineMonitorMedia (tapi.h)

La fonction lineMonitorMedia active et désactive la détection des types de médias (modes) sur l’appel spécifié. Lorsqu’un type de média est détecté, un message est envoyé à l’application. Pour plus d’informations, consultez ITLegacyCallMediaControl ::MonitorMedia.

Syntaxe

LONG lineMonitorMedia(
  HCALL hCall,
  DWORD dwMediaModes
);

Paramètres

hCall

Gérer l’appel. L’état de l’appel de hCall peut être n’importe quel état, sauf inactif.

dwMediaModes

Types de médias à surveiller. Si ce paramètre est égal à zéro, il annule la détection de tous les types de média. Ce paramètre utilise une ou plusieurs constantes LINEMEDIAMODE_.

Valeur retournée

Retourne zéro si la requête réussit ou un numéro d’erreur négatif si une erreur se produit. Les valeurs de retour possibles sont les suivantes :

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

Remarques

Les types de médias spécifiés avec lineOpen concernent uniquement l’activation de la détection de ces types de médias par le fournisseur de services afin de transmettre de nouveaux appels entrants à l’application appropriée. Elles n’ont aucun impact sur les messages de notification en mode multimédia attendus en raison d’un appel précédent de lineMonitorMedia.

Cette fonction est considérée comme réussie si l’analyse du type de média a été correctement lancée, et non lorsque l’analyse du type de média est terminée. La surveillance des médias pour un type de média donné reste en vigueur jusqu’à ce qu’elle soit explicitement désactivée en appelant lineMonitorMedia avec un paramètre dwMediaModes défini sur zéro, jusqu’à ce que l’appel passe à inactif, ou lorsque l’application libère son handle d’appel pour l’appel. La fonction lineMonitorMedia est principalement un mécanisme de rapport d’événements. Le type de média (mode) de l’appel, comme indiqué dans LINECALLINFO, n’est pas affecté par la détection du type de média par le fournisseur de services. Seule l’application de contrôle peut modifier le type de média d’un appel.

L’analyse multimédia par défaut effectuée par le fournisseur de services correspond à l’union de tous les types de médias spécifiés sur lineOpen.

Bien que cette fonction puisse être appelée dans n’importe quel état d’appel, le type de média d’un appel ne peut généralement être détecté que lorsque l’appel est dans certains états d’appel. Ces états peuvent être spécifiques à l’appareil. Par exemple, dans ISDN, un message peut indiquer le type de média du flux multimédia avant l’existence du flux multimédia. De même, la sonnerie distinctive ou les informations d’identificateur appelées sur l’appel peuvent être utilisées pour identifier le type de média d’un appel. Sinon, l’appel peut devoir recevoir une réponse (appel à l’état connecté ) pour permettre à un fournisseur de services de déterminer le type de média de l’appel en filtrant le flux multimédia. Étant donné que le filtrage du flux multimédia d’un appel implique une surcharge de calcul, les applications doivent désactiver la surveillance des médias lorsque cela n’est pas nécessaire. Par défaut, la surveillance des médias est activée pour les nouveaux appels entrants, car le type de média d’un appel sélectionne l’application qui doit gérer l’appel.

Une application sortante qui traite des types de médias vocaux peut surveiller l’appel au silence (un ton) pour distinguer qui ou ce qui est à la fin d’un appel. Par exemple, une personne à la maison peut répondre aux appels avec simplement un court « bonjour ». Une personne au bureau peut fournir un message d’accueil plus long, indiquant le nom et le nom de l’entreprise. Un répondeur peut généralement avoir un message d’accueil encore plus long.

Étant donné que la détection en mode multimédia activée par lineMonitorMedia est implémentée en tant qu’opération en lecture seule du flux multimédia de l’appel, elle n’est pas perturbatrice.

La surveillance des médias lors d’une téléconférence s’applique uniquement au paramètre hConfCall , et non aux appels individuels participants.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête tapi.h
Bibliothèque Tapi32.lib
DLL Tapi32.dll

Voir aussi

LINECALLINFO

Fonctions de service de ligne supplémentaires

Vue d’ensemble de la référence TAPI 2.2

lineOpen