Initier une session
Les principaux éléments d'information qu'une application fournit pour lancer une session de communication sont le type d'adresse, le ou les types de support et l'adresse de destination.
L'adresse de destination peut nécessiter une traduction d'adresse afin de mettre les informations saisies par un utilisateur dans le format approprié pour un type d'adresse donné. Par exemple, un numéro de téléphone figurant dans un carnet d'adresses électronique au format canonique devra être converti au format de numérotation.
Certaines sessions peuvent nécessiter des paramètres de configuration spéciaux, s'ils sont pris en charge par le fournisseur de services. Par exemple, un TSP RNIS peut transmettre des informations sur l'utilisateur et certains MSP ont besoin d'informations sur la direction du flux de média. Reportez-vous à la section Informations sur la session pour passer en revue les données qui peuvent être définies ou obtenues concernant une session.
Une fois qu'une session a été lancée, TAPI informe l'application de la progression de l'appel à l'aide du mécanisme de notification d'événements mis en place lors de l'initialisation.
TAPI 2.x : Les applications lancent une session à l'aide de la fonction lineMakeCall. La fonction lineTranslateAddress est utilisée pour effectuer une traduction d'adresse, si nécessaire.
Les paramètres de configuration de l'appel peuvent être stockés dans la structure de données LINECALLPARAMS, et un pointeur sur cette structure est alors utilisé comme paramètre de lineMakeCall. Si aucune structure LINECALLPARAMS n'est fournie à lineMakeCall, un appel POTS de qualité vocale par défaut est requête avec un ensemble de valeurs par défaut.
Si la session est établie avec succès, une poignée d'appel avec les privilèges du propriétaire est renvoyée à l'application et TAPI envoie à l'application des messages LINE_CALLSTATE contenant des informations sur la progression de l'appel. Les applications utilisent généralement ces messages pour afficher des rapports d'état à l'utilisateur.
TAPI 3.x : Les applications lancent une session de communication en invoquant la méthode ITAddress::CreateCall sur une adresse capable de gérer le type d'adresse et le type de média requis. Si l'adresse expose l'interface ITTerminalSupport, les terminaux sont sélectionnés dans les flux de médias de l'objet d'appel. Vous trouverez une illustration de ce processus dans l'exemple de code Passer un appel.
Les paramètres d'établissement de l'appel peuvent être stockés ou modifiés à l'aide des méthodes exposées par l'interface ITCallInfo.
Si la session est établie avec succès, TAPI renvoie un pointeur d'interface ITBasicCallControl qui peut être utilisé pour d'autres opérations de session ou pour obtenir un pointeur d'interface ITCallInfo qui peut être utilisé pour acquérir des informations de session supplémentaires. L'interface ITCallStateEvent traite les événements relatifs à l'état de l'appel TAPI.
Remarque
L'interface TAPI ne doit pas être utilisée pour les transmissions de télécopies. Utilisez plutôt les fonctions disponibles via MAPI, l'API de messagerie de Microsoft.
Traduction d'adresses
Un utilisateur final ou une application serveur peut stocker des adresses dans un format qui n'est pas compatible avec les besoins d'un fournisseur de services donné. Par exemple, un numéro de téléphone peut être stocké dans un carnet d'adresses électronique au format canonique, mais la plupart des fournisseurs de services qui gèrent les numéros de téléphone exigent le format composable.
TAPI fournit des opérations de traduction d'adresses qui aident une application à présenter le type d'adresse correct à un FST. Le fournisseur de services spécifie à TAPI les types d'adresses qu'il prend en charge et n'a pas besoin d'inclure une quelconque forme de traduction d'adresses.
TAPI 2.x : Voir lineTranslateAddress.
TAPI 3 : voir ITAddressTranslation, ITAddressTranslationInfo.
Listes de péage
Dans certaines régions d'Amérique du Nord, tous les appels téléphoniques passés vers l'indicatif local sont des appels locaux. Dans d'autres endroits, certains appels passés à l'indicatif local sont des appels longue distance et nécessitent le préfixe « 1 » pour être composés. Les trois premiers chiffres de l'adresse (le préfixe) déterminent si un appel à l'intérieur de l'indicatif local est un appel payant ou non.
Une liste de péage est une liste de préfixes dans l'indicatif local dont les adresses doivent être composées comme des adresses longue distance, et qui sont soumises à des frais de longue distance.
Les listes de péage ne sont pas pertinentes pour les fournisseurs de services ou pour les applications qui n'accèdent pas à un réseau téléphonique.
TAPI 2.x : Voir lineTranslateAddress (bits LINETRANSLATERESULT_INTOLLLIST et LINETRANSLATERESULT_NOTINTOLLLIST dans la structure LINETRANSLATEOUTPUT), lineSetTollList.
TAPI 3 : Voir ITAddressTranslation::TranslateAddress, ITAddressTranslationInfo::get_TranslationResults.