Je peux t’aider sur certains points, étant donné que j’ai déjà fait développer une interface pour TAPI en .net par un stagiaire.
Donc déjà, tu peux commencer à étudier la doc officielle en long, en large et en travers.
Ensuite, Les différences entre TAPI 3 et TAPI 2 : TAPI 3 est une surcouche COM de TAPI 2, rajoutant une vision objets/classes à TAPI2.
Pour utiliser la lib en .net (en imagniant que tu bosses en managed), il te faudra ajouter une référence vers l’objet COM (Microsoft TAPI 3.0 Type Library). Ensuite tu instancies un TAPI3Lib.TAPIClass(), et c’est parti.
La grosse partie que tu vas devoir analyser, c’est la méthode RegisterCallNotifications() qui permet de dire que tu souhaite être notifié des évènements TAPI, et l’évènement Event qui est levé lorsqu’une opération se produit sur TAPI. Si tu ne dois pas manipuler la ligne, tu n’auras pas besoin d’aller bien plus loin.
Un truc qu’il te faut savoir si tu manipules COM pour la première fois : le système de gestion des différentes versions du composant TAPI passe par des interfaces qui peuvent proposer deux formes : IMonInterface et IMonInterface2 (pas de version 3 avec TAPI).
IMonInterface possède certaines fonctionnalitées, et pour ne pas casser la compatibilité ascendante, les nouvelles fonctionnalités apparues dans les versions suivantes sont disponibles dans la version 2 de l’interface. Du coup, la plupart des champs/méthodes renvoient des object, que tu pourras transtyper au moins dans la première version de l’interface, voire dans la seconde si l’os est suffisament récent.
Exemple: TAPIClass est de type ITTAPI, et possède une propriété Addresses. Dans la doc ils te disent renvoyer une collection de ITAddress. Ca c’est le minimum. Si tu te trouves sur un Os suffisament récent (en l’occurance, possédant TAPI 3.1), tu pourras caster ton ITAddress en ITAddress2 et ainsi accéder à plus de propriétées.
C’est une notion essentielle dans tout ce qui touche à COM, qu’il faut bien piger quand tu débutes.
PS: Tapi en français, tu peux toujours réver. Déjà que la doc en anglais est pas légion, alors en français.