Table des matières

Click-To-Dial dans Thunderbird

Il est possible de mettre en place un click-to-dial dans thunderbird, en combinant l'extension telify, un script personnalisé, et un petit CGI sur le serveur asterisk.

Installation du CGI callback

La première chose à faire est d'installer sur le serveur le CGI de callback comme expliqué sur cette page.

Dans le server-manager, sur le panel Informations Utilisateurs, il faut remplir pour tous les utilisateurs le champs Téléphone Interne (qui sera mappé dans l'attribut extensionNumber dans l'annuaire LDAP). Une fois dans l'annuaire LDAP, ce champs sera passé au script CGI par LemonLDAP::NG (qui récupère le champ LDAP à l'ouverture de session) et permettra de connaitre le numéro de l'utilisateur qui appel (c'est ce numéro qui sera composé par asterisk avant de le mettre en relation avec le numéro du destinataire)

Installer l'extension Thunderbird

Il faut installer l'extension telify dans votre Thunderbird.

Installer l'extension pour Firefox

l'extension Telify est aussi disponible pour Firefox.

Configuration de Telify

Configuration de l'extension Telify

Pour Windows

Créer le script qui servira de handler pour les URI callto:

Il faut maintenant créer un script qui sera exécuté lors de l'ouverture des liens de type callto: Placez ce script sur les postes client, par exemple dans C:\Program Files\asterisk\dialer.bat

dialer.bat
set ndest=%1
set ndest=%ndest:callto:=%
start https://callback.domain.tld/index.cgi?ndest=%ndest%
remplacez domain.tld par votre nom de domaine

Déclarer dans le registre le support des URI tel:

Ce petit bout de registre permet de déclarer le script créé plus haut comme handler pour les URI de type tel:

callto.reg
Windows Registry Editor Version 5.00
 
[HKEY_CLASSES_ROOT\tel]
@="URL: CallTo Protocol"
"EditFlags"=hex:02,00,00,00
"URL Protocol"=""
 
[HKEY_CLASSES_ROOT\tel\DefaultIcon]
@="\"C:\\Program Files\\NetMeeting\\conf.exe\",1"
 
[HKEY_CLASSES_ROOT\tel\shell]
 
[HKEY_CLASSES_ROOT\tel\shell\open]
 
[HKEY_CLASSES_ROOT\tel\shell\open\command]
@="C:\\Program Files\\asterisk\\dialer.bat %1"

Enjoy ;-)

Pour Linux

Sous linux, le principe reste le même, mais le script et la gestion des URI callto:// change forcément

Créer le script de gestion des URI callto://

Voilà un petit script bash qui permettra d'appeler la page de callback (par ex : dialout.sh):

cat<<'EOF' > /usr/local/bin/dialout.sh
#!/bin/bash
 
num=$(echo $1 | perl -pe 's|callto:(///)?||')
 
xdg-open https://callback.domain.tld/cgi-bin/index.cgi?ndest=$num
EOF
chmod +x /usr/local/bin/dialout.sh

Déclarer la gestion des URI callto://

Pour déclarer ce script comme prennant en charge les URI de type callto: sur le système, il vous faudra créer un fichier .desktop de ce type (par exemple dans /usr/share/applications/dialout.desktop ou ~/.local/share/applications/dialout.desktop)

#!/usr/bin/env xdg-open
 
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=Application
Name=Dialout
GenericName=Dialout
Comment=Click To Dial
Terminal=false
Categories=Internet
StartupNotify=true
MimeType=x-schema-handler/tel;x-schema-handler/callto;x-schema-handler/skype;
Exec=/usr/local/bin/bin/dialout.sh %U

Une fois ce fichier en place, il faut mettre à jour la base de donnée:

sudo update-desktop-database

Faire comprendre à Thunderbird comment gérer les URI callto:

Faites un clique droit sur une URI callto: (dans un mail ou sur une fiche contact), puis sélectionnez “Ouvrir le lien dans le navigateur”, là, une fenêtre vous demandera quelle application prend en charge ce type de lien, vous n'avez qu'à enter /usr/bin/xdg-open et cocher la case “Toujours utiliser cette application”