Configurer la présentation du numéro

Divulgâchage : Recevoir les appels extérieurs, c’est bien, mais savoir qui nous appelle, c’est mieux. C’est ce que nous allons configurer aujourd’hui. La difficulté sera de configurer les formats des données envoyées par la passerelle et reçue par l’IPBX pour qu’ils se comprennent, sachant que les téléphone IP utilisent les informations contenues dans le champs SIP from afin de déterminer automatiquement le numéro.

Même s’il suffit de décrocher pour savoir qui nous appelle, c’est parfois bien plus pratique de le savoir avant de décrocher. Ne serait-ce que pour anticiper les démarchages commerciaux intempestifs.

J’aime encore bien les faire tourner en bourrique, mais des fois, je n’ai franchement pas le temps pour ça.

geralt @ pixabay

Lorsque nous avons installé notre téléphonie sur IP, nous avons d’abord eu quelques déboires avec la présentation du numéro. Après plusieurs essais et erreurs, nous avons finalement compris le système et convergé vers le réglage qui va bien.

Principe de base

La présentation du numéro s’opère de manière totalement différente suivant la technologie utilisée.

Le réseau analogique encode les information d’identification via une modulation de fréquence FSK insérée entre la première et la deuxième sonnerie.

Le réseau IP, SIP inscrit ces information dans les en-têtes du messages (from et/ou contact) suivant la configuration des systèmes.

Ces champs d’identification utilise le format des adresses de courriel RFC 5322. Le display name permet d’afficher un nom, le numéro d’extension étant inséré dans la partie locale de l’adresse, le domaine étant l’IPBX qui gère l’appel. Par exemple : From: "username" <sip:0102030405@192.168.1.4>.

La passerelle HX4G fait déjà le lien entre les deux technologies analogique et IP, reste donc à rendre nos équipements IP compatibles.

Passerelle HX4G

La configuration de la présentation du numéro se fait via l’écran de configuration commun aux lignes externes, via Trunk / Advanced. Seul le paramètre suivant est impliqué :

Configuration avancée du trunk

On pourrait être tenté de choisir la valeur Display qui paraît prometteur. En effet, la documentation précise :

  • DISPLAY: include the incoming call number detected at the FXO port in the Display field and send it to the peer end. The From field carries the phone number associated with the FXO port.
  • FROM: include the incoming call number detected by FXO in the From field and send it to the peer end. No Display information is carried.

La RFC 3261 - SIP n’ayant pas de champ display, on pourrait alors supposer qu’il s’agit de la RFC 5322 - Mail et conclure que le numéro sera inséré dans le champ display name et correctement utilisé par les autres équipements.

Après avoir bien testé cette configuration, lu les logs des équipements et inspecté tout le trafic réseau correspondant, il s’avère que ce réglage ne marche pas : le numéro de l’appelant n’apparaît nulle part.

Avec le réglage from, l’adresse sera construite comme suit :

Ce qui donne pour l’exemple, l’adresse suivante :

"uranus" <sip:0102030405@192.168.1.4>

Notez que quoi qu’il arrive, HX4G émet également une en-tête Contact contenant le numéro du trunk, sans son nom : <sip:501@192.168.1.158:5060>.

IPBX VitalPBX

Côté VitalPBX, cette configuration s’effectue individuellement pour chaque trunk, via le menu PBX / External / Trunks. Il faut alors configurer le champ suivant :

Configuration d’un trunk

Si on choisi From : on se heurte alors à une incompatibilité. VitalPBX s’attend à trouver le CID dans le display name mais celui-ci contient le nom du trunk (uranus). Lorsqu’il routera l’appel, VitalPBX utilisera alors l’adresse suivante (ou le numéro de l’appelant à disparu) :

"uranus" <sip:asterisk@192.168.1.4>

Si on choisi Contact : VitalPBX utilise l’en-tête correspondante. Ne trouvant pas de display name, asterisk s’y substituera. VitalPBX utilisera alors l’adresse suivante :

"asterisk" <sip:501@192.168.1.4>

Téléphone IP8815

Nos téléphones IP8815 ne disposent pas d’écran de configuration pour la présentation du numéro qui est déterminée systématiquement à partir du champ from.

Le display name (nom du trunk) est affiché en première ligne, la local-part (numéro de téléphone appelant) étant sur la ligne suivante.

Et après ?

En fait, il suffisait de laisser la plupart des paramètres par défaut. Seul le HX4G avait besoin d’un changement. Mais au final, on peut savoir qui nous appelle avant de décrocher, et c’était le but.