implémentation de l`api de cti

Transcription

implémentation de l`api de cti
IMPLÉMENTATION DE L’API DE CTI
R EVISION : 20 FÉVRIER 2015
Implémentation de l’API de CTI
Table des matières
1 Préambule
1.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Description de l’API CallBox de CTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Pré-requis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2
2
3
2 API CallBox de CTI native
2.1 Connexion à l’API CallBox de CTI native . . . . .
2.2 Notifications d’appels . . . . . . . . . . . . . . .
2.3 Lancement d’appels téléphoniques (Click-to-Call)
2.4 Déconnexion de l’API de CTI native . . . . . . .
2.5 Exemple d’utilisation de l’API de CTI native . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4
4
4
4
4
5
3 API CallBox de CTI Web
3.1 Notification d’appels . . . . . . . . . . . . . . . . . . . .
3.2 Lancement d’appels (Click to Call) via l’API de CTI Web
3.2.1 Application Web . . . . . . . . . . . . . . . . . .
3.2.2 Navigateur Firefox® . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
6
6
6
Q Sommaire
.
.
.
.
.
1/7
.
.
.
.
.
.
.
.
.
.
© 2007-2015 Thinkro System
Implémentation de l’API de CTI
1
Préambule
Si vous souhaitez développer des fonctionnalités de type CTI sur votre logiciel, pour toute question technique,
contactez Thinkro System à l’adresse email suivante : [email protected]
Dans le cas où le développement réalisé est fonctionnel, votre application sera référencé parmi les logiciels compatible CTI CallBox.
1.1
Définitions
API Une interface de programmation (Application Programming Interface ou API) est une interface fournie par un programme informatique. Elle permet l’interaction des programmes les uns avec
les autres, de manière analogue à une interface
homme-machine, qui rend possible l’interaction
entre un homme et une machine. Du point de vue
technique une API est un ensemble de fonctions,
procédures ou classes mises à disposition par une
bibliothèque logicielle, un système d’exploitation ou
un service. La connaissance des API est indispensable à l’interopérabilité entre les composants logiciels.
CTI Le couplage téléphonie informatique (CTI) est l’ensemble des techniques permettant la mise en
œuvre d’applications reposant sur un interfonctionnement d’applicatifs informatiques et d’applicatifs
téléphoniques. Il s’inscrit dans la logique de convergence numérique. Ce dispositif reliant un centre
d’appel interne ou externe au système informatique
d’une entreprise, apporte aux sociétés la possibilité
d’utiliser les ressources du système d’information
et d’Internet, afin d’améliorer le service rendu aux
clients et la productivité d’un centre d’appels. Ceci
est rendu possible par l’automatisation de certaines
tâches et la possibilité d’instaurer une personnalisation poussée de la relation avec le client via les
informations mises à disposition par ce système. Il
1.2
rend possible l’affichage simultané sur l’écran du
télé-opérateur de données (fiche du client et script
de l’entretien) ainsi que la présentation de l’appel
sur son poste téléphonique. Par exemple, l’identification d’un numéro de téléphone permettra de retrouver les informations concernant l’appelant pendant que l’appel est transféré au bon interlocuteur.
La composition automatique de numéros à partir
d’une liste d’adresses constitue une autre application.
Socket Dans le contexte des logiciels, on peut le traduire par “connecteur réseau”. Apparu dans les
systèmes UNIX, un socket est un élément logiciel qui est aujourd’hui répandu dans la plupart
des systèmes d’exploitation. Il s’agit d’une interface logicielle avec les services du système d’exploitation, grâce à laquelle un développeur exploitera facilement et de manière uniforme les services
d’un protocole réseau. Il lui sera ainsi par exemple
aisé d’établir une session TCP, puis de recevoir et
d’expédier des données grâce à elle. Cela simplifie sa tâche car cette couche logicielle, de laquelle
il requiert des services en appelant des fonctions,
masque le nécessaire travail de gestion du réseau,
pris en charge par le système. Le terme socket désigne en pratique chaque variable employée dans
un programme afin de gérer l’une des sessions.
Description de l’API CallBox de CTI
L’API de la solution CallBox est capable de gérer plusieurs types de CTI :
• XML (natif).
• Microsoft® Windows® TAPI (Telephony Application Programming Interface).
• Web (destiné aux application web).
• Exécutable.
Q Sommaire
2/7
© 2007-2015 Thinkro System
Implémentation de l’API de CTI
1.3
Pré-requis
Pré-requis pour utiliser les fonctionnalités de CTI avec le système CallBox :
• Activez l’API de CTI nécessaire depuis la configuration du système CallBox (Perspective “Configuration” →
Onglet “Paramètres” → Section “Configuration CTI”).
Sur le poste informatique utilisateur :
1. Installez et démarrez le logiciel CallBox UI.
2. Identifiez-vous dans la perspective “Supervision” du logiciel CallBox UI.
Q Sommaire
3/7
© 2007-2015 Thinkro System
Implémentation de l’API de CTI
2
API CallBox de CTI native
2.1
Connexion à l’API CallBox de CTI native
Pour utiliser l’API CallBox de CTI native, il faut se connecter sur le socket localhost:3009 (read/write).
2.2
Notifications d’appels
Lors de la réception d’un appel sur le système CallBox, l’API de CTI native envoi un Event XML sur le socket (réf.
listing 1).
Attributs et valeurs possibles contenues dans l’Event XML que vous recevez :
• sens : IN (appel entrant), OUT (appel sortant) ou OTHER (sens d’appel indéterminé).
• action : RING (sonnerie), ESTABLISHED (communication établie) ou HANGUP (appel raccroché).
• number : le numéro de téléphone de l’appelant.
• name : le nom du contact correspondant à ce numéro de téléphone du carnet d’adresses CallBox.
• id : un identifiant unique d’appel.
Listing 1 – Réception d’un appel
1
2
3
<event >
< c a l l sens= "IN" a c t i o n = "HANGUP" number= "0954933277" name= "Mr Martin" i d = "00032a" / >
< / event >
4
Un Event XML est toujours terminé par une ligne vide.
2.3
Lancement d’appels téléphoniques (Click-to-Call)
Pour effectuer le lancement d’un appel téléphonique, il suffit d’envoyer une Action XML sur le socket (réf. listing 2).
Listing 2 – Lancement d’un appel téléphonique
1
2
3
<action>
< c a l l number= "0662140255"
</ action>
/>
4
Une Action XML est toujours terminée par une ligne vide.
2.4
Déconnexion de l’API de CTI native
Pour se déconnecter de l’API CallBox de CTI native, il faut lancer une Action XML sur le socket sur localhost:3009.
Q Sommaire
4/7
© 2007-2015 Thinkro System
Implémentation de l’API de CTI
Listing 3 – Déconnexion de l’API de CTI native
1
2
3
<action>
<quit
</ action>
/>
4
Une Action XML est toujours terminée par une ligne vide.
2.5
Exemple d’utilisation de l’API de CTI native
Sur un système exécutant Microsoft® Windows® , en utilisant l’outil logiciel “AutoHotKey”, il est possible de configurer
un raccourci clavier permettant de lancer un appel sur la sélection d’un numéro de téléphone réalisée depuis n’importe quelle application.
Mise en oeuvre
1. Téléchargez l’exécutable depuis http://mir.thinkrosystem.com/opensource/ahk-callbox.exe
2. Configurez le poste informatique afin qu’il lance cet exécutable au démarrage
3. Activez l’API de CTI native dans la configuration du système CallBox.
Utilisation
Pour lancer un appel depuis une sélection :
1. Sélectionnez un numéro de téléphone (avec la souris par exemple).
2. Réalisez la combinaison de touches [SHIFT]+[CTRL]+[P]
Q Sommaire
5/7
© 2007-2015 Thinkro System
Implémentation de l’API de CTI
3
API CallBox de CTI Web
3.1
Notification d’appels
L’activation et la configuration des notifications d’appel Web sont réalisées depuis la perspective “Configuration” du
logiciel client CallBox.
Options de configuration de CTI Web
• Configuration de l’URL à ouvrir lors d’une activation.
• Activation sur sonnerie d’un appel entrant.
• Activation sur sonnerie d’un appel sortant.
• Activation sur décroché d’un appel entrant.
• Activation sur décroché d’un appel sortant.
Fonctionnement
Lors de l’activation, l’URL configurée est ouverte dans le navigateur par défaut du poste et la chaine ##NUM## est
remplacée par le numéro de téléphone de l’appelant.
3.2
3.2.1
Lancement d’appels (Click to Call) via l’API de CTI Web
Application Web
Mise en oeuvre
1. Insérer un iframe dans la page web d’où l’appel téléphonique doit être lancé :
1
< i f r a m e s t y l e = "display:none;" name= "hiddenframe" >
2. Afin de lancer l’appel téléphonique, ajouter un lien de la forme suivante :
1
3.2.2
<a h r e f = "http://localhost:3008/0606060606" t a r g e t = "hiddenframe" > Appeler < / a>
Navigateur Firefox®
Mise en oeuvre
1. Téléchargez et installer le module “Telify” pour Firefox® .
2. Configurez le plugin “Telify” en vous conformant à la copie d’écran suivante (Fig. 1) :
Q Sommaire
6/7
© 2007-2015 Thinkro System
Implémentation de l’API de CTI
Figure 1: Configuration du module “Telify” pour Firefox® avec le système CallBox
Utilisation
Pour lancer un appel vers un numéro de téléphone présent sur une page web :
1. Survolez le numéro de téléphone avec le pointeur de la souris.
2. Cliquez sur le lien spécial qui apparaît.
Q Sommaire
7/7
© 2007-2015 Thinkro System
© 2015 THINKRO SYSTEM. Tous droits réservés.
THINKRO SYSTEM, CALLBOX, THINKRO BUSINESS et les autres produits et services THINKRO SYSTEM
mentionnés dans ce document, ainsi que leurs logos respectifs, sont des marques ou des marques déposées
de THINKRO SYSTEM en France et dans d’autres pays. Tous les autres produits et services mentionnés sont
des marques de leurs sociétés respectives.
Les données contenues dans ce document sont soumises à modification sans préavis. Elles sont fournies
par THINKRO SYSTEM à titre d’information uniquement, sans responsabilité ni garantie d’aucune sorte, et
THINKRO SYSTEM ne peut être tenu pour responsable des éventuelles erreurs ou omissions de ce document. Les seules garanties consenties, relativement aux produits et services de THINKRO SYSTEM, sont
celles énoncées dans les éventuelles déclarations expresses de garantie qui accompagnent lesdits produits
et services. Aucune information de ce document ne constitue une garantie d’aucune sorte.

Documents pareils