#

Qu’est ce que MiniPavi ?

MiniPavi, pour Mini Point d'Accès Videotex, est développé dans le cadre d'un projet open source personnel de préservation du patrimoine technologique que représente le Minitel.

Si cette préservation passe naturellement par la conservation du matériel, elle passe également par celle de l'expérience utilisateur nécessitant ainsi l'existence de services télématiques.

MiniPavi permet donc, encore aujourd'hui, depuis un seul et même accès (accessible depuis le web, le téléphone ou ESP32/MiniMit) de consulter divers services Minitel !

Pour rappel, et pour les moins de 20 ans, Minitel, commercialement exploité entre 1980 et 2012, a été le premier service au monde à donner accès à des services variés préfigurant ceux du futur Internet grand public, et le plus développé en 1990.

Avec Minitel, (re)découvre un monde de communication sans pub, sans virus, sans fioritures, et sans empressement !

Après le slow food, voici un peu la slow com !

De plus, pour celles et ceux qui souhaiteraient créer leur propre service, MiniPavi en facilite le développement.

Jusqu’à présent, le développement de services Minitel demandait nécessairement des compétences techniques pas forcément à la portée de tous.

MiniPavi permet de développer simplement des services (vintages !) Minitel en technologie standard Serveur Web (type Apache) et PHP. Un simple hébergement Web PHP suffit donc !

Si la programmation en PHP n'est pas ton fort, tu peux également créer un service basique via l'édition d'un simple fichier texte XML, ou encore utiliser n’importe quel autre langage de programmation, le protocole de communication entre le service et MiniPavi étant totalement documenté !

Enfin, pour aller au bout des choses, tu peux même installer ton propre accès MiniPavi, son code étant open source !

Le Minitel n’est pas mort !



L’utilisateur (le Minitel) communique via websocket ou téléphone (VoIP/RTC) avec la passerelle MiniPavi, et MiniPavi communique avec les services minitel via de bonnes vieilles requêtes http.



Comment ça marche ?

?

Que veux-tu faire ?

<> Je veux accéder à des services minitel !

Sans minitel, avec l’émulateur en ligne :
Il te permet d’accéder à la passerelle MiniPavi immédiatement et simplement !
Accès à MiniPavi
avec l'émulateur Minitel


Avec un minitel connecté à la ligne fixe de ma box :
Compose le 09 72 10 17 21 et suit les instructions !
Tu pourras alors profiter de services minitels comme dans l’temps !

Avec un minitel relié à un Minimit ou tout autre périphérique type « ESP32 » :
Suit les instructions fournies avec ton périphérique.
Pour le Minimit, MiniPavi est accessible par le choix 14 du « Guide des services »
Pour le dongle ESP2-Minitel de Louis H., MiniPavi est préchargé dans sa configuration.
Plus d'infos sur le Minimit et le dongle ESP32-Minitel : voir rubrique Ressources

Sans minitel, avec un émulateur logiciel fonctionnant par connexion TCP :
Connecte ton émulateur à l’adresse : go.minipavi.fr , port : 516

Sans minitel, avec un émulateur logiciel fonctionnant par connexion TCP/Websocket :
Connecte ton émulateur à l’adresse : go.minipavi.fr , port : 8182 (connexion SSL disponible sur le port 8181)

<> Je veux créer un service minitel accessible depuis MiniPavi !

Avec un simple fichier texte XML avec XMLint :
Pré-requis : un hébergement Web

Le codage pur et dur n’est pas ton fort ? Pas de problème : avec XMLint, la simple édition d’un fichier XML te permet de créer un service Minitel de base !

Pour cela, tu n’as besoin que d’un éditeur de texte pour créer ton fichier XML, un hébergement web (pour que ton fichier soit accessible par MiniPavi), éventuellement composer tes pages vidéotex (voir « Ressources » en fin de page) et, bien sûr, lire la documentation !

C’est parti ? Télécharger la documentation XMLint

En PHP, avec la librairie MiniPaviCLI :
Pré-requis : un hébergement Web/PHP

Créer ton service Minitel, si tu connais un peu le PHP, alors, tu peux le faire toi aussi !

Tu télécharges les fichiers du projet MiniPavi Client :

<> MiniPaviCli.php : la classe PHP « MiniPaviCli », que tu utilises dans ton script pour faire ton service. C’est cette classe qui assure la communication entre la passerelle MiniPavi et ton service. Et tu n’aura besoin que de ça.

<> DisplayPaginatedText.php & DisplayList.php : deux classes PHP, facultatives, pour faciliter l'affichage de textes et de listes de choix sur plusieurs pages.

<> Cinq exemples fonctionnels de services :

-> MiniChat : un dialogue en direct typique des services Minitel des années 80 et 90, mais animé par ChatGPT ! Chaque "connecté" a son propre comportement !
index.php : le script principal
miniChatFunctions.php : fonctions utilisées par le script
animGPT.php : fonctions utilisées par le script pour l'interfaçage avec ChatGPT
MiniChatAcc.vdt : fichier image videotex du logo du chat

C'est le script le plus complet (et complexe) si tu veux comprendre le fonctionnement de MiniPavi et développer tes propres services.

 

-> France24 : un petit service qui reprend les dépêches de France24
index.php : le script principal
France24Functions.php : fonctions utilisées par le script
FRANCE24.VDT : fichier videotex de l’accueil du service [moche :-( ]

 

-> Sncf : les départs et arrivées en temps réel
index.php : le script principal
MiniAPISncf.php : Récupereration des horaires
sncf2.vdt et train.vdt : fichiers videotex de logo et d'une image de train

 

-> Meteo : Minitel vous dit le temps qu'il fera !
index.php : le script principal
MiniMeteo.php : Récupereration des prévisions
meteoacc.vdt et meteofondpage.vdt : fichiers videotex de l'accueil et page interne
Répertoire icones : contient les icones videotex des prévisions

 

-> XMLint : interpéteur XML permettant la réalisation de services Minitel simples sans programmation.
index.php: script du service
XMLfunctions.php: Fonctions utilisées dans le script du service
fond.vdt: page videotex utilisée par le script du service

Fichiers de démonstration:
demo.xml: exemple de fichier XML décrivant un service Minitel
moto.vdt: page videotex utilisée pour le service défini dans "demo.xml"
pirate.vdt: page videotex utilisée pour le service défini dans "demo.xml"
salut.vdt: page videotex utilisée pour le service défini dans "demo.xml"

XMLint-doc.pdf : documentation concernant la réalisation de services Minitel par fichier XML

<> Installation :

Par exemple, si tu veux installer le service MiniChat sur ton serveur web, il suffit d’y placer ses fichiers index.php, miniChatFunctions.php et MiniChatAcc.vdt, sans oublier bien sûr MiniPaviCli.php

Les différents scripts sont suffisamment commentés et développés de manière plutôt simple afin que ceux-ci soient facilement compréhensibles et suffisent à faire comprendre le fonctionnement de MiniPavi.

Ils peuvent bien évidemment être modifiés et distribués.

L'ensemble est téléchargeable, ainsi qu'une documentation, via le lien GitHub ci-dessous :
Télécharger MiniPavi Client PHP

En PHP, avec le framework MiniPaviFwk :
Pré-requis : un hébergement Web/PHP

Ce framework a été développé avec passion par iAPX !

MiniPaviFwk s’appuie sur MiniPaviCli, dans l’idée de créer en PHP des services Minitel dynamiques plus complexes, en essayant de dissocier présentation, touches de fonctions autorisées et gestion des interactions utilisateur.

Chaque page de l’arborescence est dans son propre contrôleur, chaque part de l’interaction dans sa ou ses fonctions, quelques helpers sont fournis pour simplifier l’affichage des menus y-compris multipages, le contenu texte multipage, les effets Vidéotex ainsi que la conversion d’images JPEG ou PNG (en v1.1).

Ne pas hésiter à essayer la demo, et surtout regarder le code dans services/demo/controllers : tu sauras rapidement si cela va répondre à tes besoins, ou pas!

En bonus si tu as déjà un service XMLint, il y a un outil de conversion de celui-ci en code PHP, pour faciliter ce passage.
Télécharger MiniPaviFwk

Dans n’importe quel autre langage de programmation :
Pré-requis : un hébergement Web supportant le langage choisi

Le protocole de communication entre MiniPavi et un service minitel est totalement documenté dans la documentation de MiniPaviCLI.

Tu peux ainsi utiliser le langage de ton choix qui devra alors implémenter, comme le fait en PHP la librairie MiniPaviCLI, ce protocole très simple. Télécharger la documentation MiniPaviCLI

<> Je veux installer ma propre passerelle MiniPavi et être indépendant !

Le grand jeu ! Tu pourras accèder à tes services via ta propre passerelle MiniPavi sans passer par la passerelle publique !

Tout le code source est disponible, documentation incluse, dans le dépôt GitHub "minipavi"
Télécharger MiniPavi (passerelle)



#

Quelques infos techniques


La passerelle MiniPavi est 100% soft: c'est un Raspberry, avec un developpement en PHP et un serveur Asterisk avec un module softmodem pour l'accès par téléphone.

La ligne VoIP est fournie par OVH.

Afin de limiter les erreurs de transmission dues à la VoIP, MiniPavi utilise la PCE (Procédure de Correction des Erreurs) intégrée aux Minitels.

Pour se connecter avec un émulateur ne prenant pas en charge la PCE (par exemple HyperTerminal sous Windows), un accès sans PCE est disponible au 09 72 10 03 08

Les services Minichat, SNCF, Meteo et France 24 sont hébergés sur un serveur OVH.

Et pour les tests avec un vrai Minitel, un Minitel Magis Club et un Minitel 1 (9 NFZ 201) La Radiotechnique (celui là même que j'ai utilisé quand j'étais ado, ça date !) et un boitier ATA Sipura pour les connecter à la ligne VoIP. Et un Minimit.

+

Quelques photos !

Toute une famille
Le père, le fils et le... grand-père!

Magis Club
Le père : le Minitel Magis Club
Minitel 1
Le grand-père : le Minitel 1


Minitel 1 9NFZ201
Le grand-père : son certificat de naissance


Bonus : micro-ordinateur EXL100 de Exelvision connecté à MiniPavi sur TV vintage !

VCF 2024
MiniPavi sur Minitel US en compagnie d'un Altair 8800 au VCF 2024 à Chicago


VCF 2024
MiniPavi sur Minitel US au VCF 2024 à Chicago grâce à Nicolas Mailloux


CCIN2P3
Le service du CCIN2P3 lors des Journées du Patrimoine 2024, réalisé avec MiniPavi.


CCIN2P3
MiniPavi sur terminal Thomson (1982) de l’expérimentation T3V pour Télétel Velizy Villacoublay et Versailles dit « Chauffe Plat » distribué à partir de 1980 à un nombre restreint de personnes.
Cette expérimentation a permis de mettre au point l’usage commercial du Minitel en créant divers services.
Remerciements à "Polo" du forum https://forum.museeminitel.fr

Ressources & mot de la fin

Quelques ressources

STUM1B
La bible des développeurs des services Minitel à l’époque. Copyright Télétel 1986 !
Bon, c’est plutôt l’ancien testament maintenant…

Codes videotex
Résumé des principaux codes videotex (auteur inconnu)

Miedit - https://minitel.cquest.org/
Composeur en ligne de pages videotex et émulateur Minitel, très brillamment développé par Frédéric BISSON

MiniMit - https://fr.ulule.com/minimit/
Un petit boitier au design sympa pour faire revivre votre Minitel, avec ou sans WiFi, par MultiPlié

Dongle ESP32-Minitel - https://www.tindie.com/products/iodeo/minitel-esp32-dongle/
Analogue au Minimit. Nécessite une connexion Wifi. Permet la connexion à des services Minitel, mais pas que ! Par Louis H.

ESP32-Minitel - https://hackaday.io/project/180473-minitel-esp32
Le projet relatif au dongle ESP32-Minitel ci-dessus, par Louis H.

VDT2BMP (Linux) - https://github.com/jfdelnero/minitel/tree/master/VDT2BMP
VDT2BMP (Windows) - http://hxc2001.free.fr/minitel/vdt2bmp.zip
Logiciel de JF Delnero permettant, entre autres, de connecter un minitel sur la sortie audio de votre ordi ! Magique !

Etude technique - http://hxc2001.free.fr/minitel/
Une étude technique très complète d'un Minitel 2, par JF Delnero.

Emulateur Minitel "Libre" - http://www.minipavi.fr/emulminitel/indexws.php
Emulateur Minitel de MiEdit modifié, avec possibilité d'ouverture de n'importe quelle adresse websocket (ws et wss) et enregistrement.

Playlist Youtube de vidéos concernant le Minitel

Mon rapport de stage à la société FERMIC en 1993 en tant que développeur de services Minitel
(bon, là pour le coup ça ne m’a pas vraiment servi pour ce projet !)

Le mot de la fin

Développer ce projet sans prétention m’a fait revivre mes premiers pas professionnels lorsque je développais des services Minitel (puis Audiotel) chez la société FERMIC durant la première moitiée des années 90.

Cela m’a permis de rajeunir de quelques décades (les rides n’ont pas disparues…),
et me remémorer mes anciens collègues (José, Thierry, Ludo, Hakim, Philippe, Sorouch, Xavier, Agnès.. et j’en oublie !) avec qui j’ai passé une période professionnelle bien sympathique ! (souvenir des livraisons de sandwichs à la mayo par la fenêtre...)



Pour me signaler des éventuels bugs, n'hésitez pas !






¡Olé!