fonction lineSetupTransfer (tapi.h)

La fonction lineSetupTransfer lance un transfert de l’appel spécifié par le paramètre hCall . Il établit un appel de consultation, lphConsultCall, sur lequel la partie peut être appelée qui peut devenir la destination du transfert. L’application acquiert le privilège propriétaire du paramètre lphConsultCall .

Syntaxe

LONG lineSetupTransfer(
  HCALL                  hCall,
  LPHCALL                lphConsultCall,
  LPLINECALLPARAMS const lpCallParams
);

Paramètres

hCall

Gérez l’appel à transférer. L’application doit être propriétaire de l’appel. L’état de l’appel de hCall doit être connecté.

lphConsultCall

Pointeur vers un handle hCall . Cet emplacement est ensuite chargé avec un handle identifiant l’appel de consultation temporaire. Lors de la configuration d’un appel pour le transfert, un appel de consultation est automatiquement alloué qui permet à lineDial de composer l’adresse associée à la nouvelle destination de transfert de l’appel. La partie d’origine peut tenir une conversation au sujet de cet appel de consultation avant de terminer le transfert. L’état de l’appel de hConsultCall n’est pas applicable.

Cette procédure de transfert peut ne pas être valide pour certains appareils de ligne. L’application peut avoir besoin d’ignorer le nouvel appel de consultation et de retirer un appel détenu existant (à l’aide de lineUnhold) pour identifier la destination du transfert. Sur les commutateurs qui prennent en charge le transfert d’appels inter-adresses, l’appel de consultation peut exister à une adresse différente de l’appel à transférer. Il peut également être nécessaire que l’appel de consultation soit configuré comme un appel entièrement nouveau, par lineMakeCall, à la destination du transfert. Les formes de transfert disponibles sont spécifiées dans les fonctionnalités d’adresse de l’appel.

lpCallParams

Pointeur vers une structure LINECALLPARAMS contenant les paramètres d’appel à utiliser lors de l’établissement de l’appel de consultation. Ce paramètre peut être défini sur NULL si aucun paramètre de configuration d’appel spécial n’est souhaité.

Valeur retournée

Retourne un identificateur de requête positif si la fonction est terminée de manière asynchrone, ou un numéro d’erreur négatif si une erreur se produit. Le paramètre dwParam2 du message LINE_REPLY correspondant est égal à zéro si la fonction réussit ou s’il s’agit d’un numéro d’erreur négatif si une erreur se produit. Les valeurs de retour possibles sont les suivantes :

LINEERR_BEARERMODEUNAVAIL, LINEERR_INVALRATE, LINEERR_CALLUNAVAIL, LINEERR_NOMEM, LINEERR_INUSE, LINEERR_NOTOWNER, LINEERR_INVALADDRESSMODE, LINEERR_OPERATIONFAILED, LINEERR_INVALBEARERMODE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLHANDLE, LINEERR_RATEUNAVAIL, LINEERR_INVALCALLPARAMS, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_STRUCTURETOOSMALL, LINEERR_INVALLINESTATE, LINEERR_UNINITIALIZED, LINEERR_INVALMEDIAMODE, LINEERR_USERUSERINFOTOOBIG, LINEERR_ INVALPOINTER.

Remarques

La fonction lineSetupTransfer configure le transfert de l’appel spécifié par hCall. La phase de configuration d’un transfert établit un appel de consultation qui permet à l’application d’envoyer l’adresse de la destination (la partie à transférer) au commutateur, tandis que l’appel à transférer est conservé en attente. Ce nouvel appel est appelé appel de consultation (hConsultCall) et peut être supprimé ou manipulé indépendamment de l’appel d’origine.

Lorsque l’appel de consultation a atteint l’état de l’appel de numérotation , l’application peut continuer à transférer l’appel en composant l’adresse de destination et en suivant sa progression, ou en détenir un appel existant. Le transfert de l’appel d’origine vers la destination sélectionnée est effectué à l’aide de lineCompleteTransfer.

Tant que l’appel de consultation existe, l’appel d’origine passe généralement à l’état onholdPendingTransfer . L’application peut être en mesure de basculer entre l’appel de consultation et l’appel d’origine à l’aide de lineSwapHold. Un appel de consultation peut être annulé en appelant lineDrop . Après avoir supprimé un appel de consultation, l’appel d’origine revient généralement à l’état connecté . Si l’état de l’appel d’origine est onholdPendingTransfer, la fonction lineUnhold peut être utilisée pour récupérer l’appel. Dans ce cas, l’état de l’appel de consultation est défini sur inactif.

L’application peut également transférer des appels en une seule étape, sans avoir à traiter l’appel de consultation intervenant, à l’aide de lineBlindTransfer.

Configuration requise

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

Voir aussi

LINECALLPARAMS

LINE_REPLY

Fonctions de service de ligne supplémentaires

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

Vue d’ensemble du transfert

lineBlindTransfer

lineCompleteTransfer

lineDial

lineDrop

lineMakeCall

lineSwapHold

lineUnhold