PAVI “in the cloud” !

Redonner l’accès à un service Minitel n’est pas toujours très simple. Soit on utilise une émulation pour permettre l’accès sans Minitel, depuis un simple navigateur web, soit il faut passer par des modems analogiques et les problèmes que posent la migration de nos bonnes vieilles lignes analogiques en VOIP.

Avec la remise en route de services comme le 3614 HACKER, disponible sur http://www.3614hacker.fr via l’émulateur javascript développé par zigazou, JH Royer a voulu aller plus loin et permettre de s’y connecter avec un vrai Minitel.

Un modem… virtualisé !

3614hacker tourne “dans le cloud”, c’est à dire dans une machine virtuelle sous Linux et l’émulateur javascript s’y connecte via une Websocket. Le tout étant virtualisé, il est difficile d’ajouter un modem physique et un adapteur VOIP. L’idée a donc germé de virtualiser aussi le modem et l’adaptation VOIP en les gérant par logiciel.

JH a donc développé un module pour Asterisk, le logiciel libre de téléphonie, pour lui ajouter une passerelle VOIP / V23 / Websocket.

Plusieurs semaines de développement et de tests ont été nécessaires pour mettre au point ce “PAVI” virtuel car il a fallut se (re)plonger dans de nombreuses documentations:
– la norme V23 du CCITT
– les Spécifications Techniques du Minitel (STUM)
– la documentation des PAVI concernant les fonctions gérées localement par celui-ci
– la documentation d’Asterisk et plus globalement des protocoles VOIP (SIP, etc)

Les premiers tests ont consistés à émettre une porteuse stable et s’assurer qu’un Minitel arrivait à rester connecté.

Ensuite c’est la modulation des bits d’information qui a été faite… bit de start à 0 suivi des 7 bits de données, du bit de parité (paire) et du bit de stop à 1.

Séquence des bits sur une liaison asynchrone (start + 7bits + parité + 1 stop)

Les 1 émettent un son de fréquence 1300 Hz et les 0 une fréquence de 2100 Hz.

Extrait des SUTM1B (page 46)

L’émission vers le modem fonctionnait et une page pouvait enfin être affichée, mais pas encore de canal de retour du Minitel vers le serveur.

Pour cela, il faut détecter les deux fréquences émises par le Minitel pour son canal à 75 bauds, avec la même logique (1 bit de start, 7 bits d’information, le bit de parité puis celui de stop) mais sur les fréquences de 450 Hz pour le 0 et 390 Hz le 1.

Les séquences de connexion ont donné un peu de travail et pas mal de tests car il faut s’assurer que le Minitel est bien connecté, ce que l’on détecte par la présence de porteuse en provenance du Minitel, mais aussi par la réception d’une séquence indiquant que la connexion est bien établie (SEP 5/3).

Extrait des STUM1B, page 126

Les derniers réglages se sont portés sur les niveaux des signaux, car les adapteurs VOIP ne sont pas tous réglés de la même façon. Les premières connexions ne posaient pas de problème depuis un Minitel connecté par RTC ou via une livebox, mais quelques ajustements ont été nécessaires pour les Freebox. Le niveau des signaux varie aussi d’un Minitel (ou modem) à l’autre.
Les tests ont ainsi été faits entre autre avec un Minitel Magis, un Minitel 1B RTIC, un M2 Telic, un M1B Telic, un Exeltel (Exelvision).

Les résultats sont excellents, meilleurs que ceux obtenus avec des modems physiques couplés à des adaptateurs VOIP. Ceci s’explique sûrement par la suppression d’une conversion numérique/analogique côté serveur.

Des airs de PAVI…

Le “PAVI” virtuel assure donc un pont entre un serveur accessible via Websocket et un appel en VOIP effectué par un Minitel ou un modem analogique.

Afin de limiter les aller/retour avec le serveur, certaines touches de fonction utilisées par le Minitel sont gérées par le PAVI virtuel, tout comme c’était le cas avec les PAVI bien physiques à l’époque du 3615 afin d’éviter des transmissions de petits paquets X25. C’est en se plongeant dans la documentation technique d’un PAVI E10 que nous avons eu la confirmation que l’écho des caractères saisis ainsi que la gestion de la touche CORRECTION était bien gérée localement par le PAVI.

Extrait du document VAF01214 “Logiciel vidéotex”, documentation PAVI E10

Une autre fonctionnalité développée par JH est le “clear/flush” qui permet de vider le tampon des données restant à émettre vers le Minitel distant lors de la réception du code d’effacement d’écran (Form Feed). Ceci évite à un écran de s’afficher intégralement alors qu’on a déjà appuyé sur une touche de fonction ou effectué une saisie faisant passer à un autre écran. Le cas typique est le court-circuitage de l’affichage de la page d’accueil d’un service. Un gain de temps bien utile lorsque l’on reçoit les données à 1200 bauds !

Du 3614 HACKER… au 09 7252 7252 !

Depuis quelques semaines on peut donc se connecter à “3614 HACKER” avec un vrai Minitel, en appelant le 09 7252 7252 et toujours via l’émulateur sur http://www.3614hacker.fr !

Un grand bravo à JH Royer pour ce travail qui ouvre des pistes très intéressantes pour offrir plusieurs modes de connexion aux mêmes services vidéotex avec une très bonne compatibilité avec nos “box” actuelles.

One Comment on “PAVI “in the cloud” !”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *