« AsusLa souris à induction »

L'envers des FSE

18.07.10 | par Le Grincheux | Catégories: Mauvaise humeur, Je hais l'informatique, Haines ordinaires

Je ne sais pas si vous connaissez les joies des FSE et ARL. Dans le jargon de la Sécurité Sociale, il s'agit des feuilles de soin électronique et des accusés de réception de lots.

Depuis son informatisation forcée, la Caisse Primaire d'Assurance Maladie utilise un protocole pour le moins bizarre pour transmettre ses feuilles de soin par voie électronique. Je dis bizarre parce qu'il a le goût du courrier électronique, il a l'odeur du courrier électronique, mais ce n'est pas une transaction de courrier électronique. La preuve en image, la faute d'orthographe étant du ressort du serveur de Wanadoo-Santé :

rayleigh:[~] > telnet smtp.sante.wanadoo.fr 25
Trying 193.252.18.66...
Connected to smtp.sante.wanadoo.fr.
Escape character is '^]'.
220 Simple Mail Transfer Service Ready
EHLO rayleigh
500 Command unrecognized or unexpected - ehlo -
HELP
500 Command unrecognized or unexpected - default -
QUIT
221 Closing transmission chanel
Connection closed by foreign host.
rayleigh:[~] >

Pour essayer de comprendre comment fonctionnait la chose, j'ai bien essayé d'utiliser ce serveur comme un SMTP traditionnel. C'est tout bonnement impossible. Il faut que le fichier ait un certain format pour qu'il soit accepté. Si ce format n'est pas correct, le serveur renvoit un message d'erreur. Ce qui est épatant, c'est l'absence de tout contrôle ou de tout message d'acquittement qui fait qu'on est incapable de savoir, lorsque le message est conforme, s'il a été envoyé vers le point d'entrée unique de la CPAM qui redirige les messages vers les serveurs des différentes caisses ou s'il s'est perdu quelque part en chemin.

J'appelle donc cette usine à gaz un protocole mal conçu et écrit avec un pied gauche puisque les praticiens envoient en aveugles des messages à un serveur distant en passant par au moins deux relais — dans mon cas Wanadoo-Santé et le point d'entrée unique — et que le serveur final n'accuse pas réception immédiatement.

Un autre point montre que ce protocole a été particulièrement bien pensé. Il utilise le port 25/TCP sur lequel tourne généralement un antivirus. Oui, j'oubliais, l'immense majorité des médecins utilise Windows, non qu'ils aiment ce système, mais parce que les lecteurs de carte Vitale et leurs progiciels (radiographie, gestion des patiens…) fonctionnent quasiment tous sous Windows. Donc, il se trouve un antivirus qui analyse ce qui passe sur le port 25/TCP comme si c'était un courrier électronique. L'ennui, c'est que le format des FSE fait tiquer tous les antivirus du marché qui marquent les fichiers transmis. La situation est alors la suivante :

  • le logiciel du praticien forme ses FSE et les envoie vers le serveurs relais ;
  • l'antivirus intercepte ce qui est envoyé sur le port 25 à destination du serveur relais et modifie subtilement ses en-têtes ;
  • le serveur relais analyse le contenu de la FSE. Le format est correct et il accepte de relayer vers la CPAM ;
  • le serveur de la CPAM reçoit la FSE, mais l'en-tête modifiée par l'antivirus provoque un rejet immédiat sans aucun message d'erreur.

Résultat des courses, les feuilles de soin électroniques se perdent dans le cyberespace. Pour le logiciel du praticien, elles ont pourtant été envoyées. Pour la CPAM et les patients qui attendent leurs remboursements, elles ne sont jamais arrivées.

Le protocole prévoit un accusé de réception des lots qui n'est envoyé que lorsqu'un groupe de feuilles de soin est acquitté par le serveur final, mais ces accusés de réception peuvent mettre quelques jours à revenir chez le praticien — la moyenne constatée est de quarante-huit heures. Dans les faits, aucun praticien ne s'étonne plus de ne pas avoir d'accusés de réception. Par ailleurs, il n'y a pas un ARL par FSE, ce serait trop simple. Il faut décortiquer les accusés de réception et les feuilles de soin pour pouvoir les associer.

En d'autres termes, le seul moyen fiable qu'a un professionnel de la santé pour savoir si les feuilles de soin qu'il a transmises à la CPAM sont bien arrivées est de demander à l'un de ses patients s'il a été remboursé.

Cette mésaventure est arrivée à l'un de mes clients. Tout fonctionnait parfaitement jusqu'au 14 juin, puis, à partir de cette date, plus aucune feuille de soin n'était reçu par la CPAM. Avant cette date, tout fonctionnait à merveille et rien, mais strictement rien, n'a changé dans sa configuration ce 14 juin. Deux jours de prestation n'ont pas suffi pour essayer de comprendre ce qui avait bien pu se passer.

Heureusement, ces machines sont derrière une passerelle tournant sous Unix. Un tcpdump m'a permis de constater sans ambiguïté que quelque chose passait sur le port 25/TCP à destination du serveur de relais et que celui-ci ne répondait rien, ce qui dans l'esprit des gens de la CPAM revient à un acquiescement. Ces feuilles de soin sont donc bien envoyées quelque part.

Après un coup de fil au service de la CPAM, débordé, qui s'occupe de tous ces problèmes, un spécialiste de la chose est diligenté et nous passons une journée à tester tous les points possibles et imaginables en arrivant à la conclusion que les FSE sont bien transmises au serveur de Wanadoo-Santé mais n'arrivent pas sur le serveur du point d'entrée unique. Du moins, c'est ce que prétend l'administrateur dudit point d'entrée unique que nous avons eu de nombreuses fois au téléphone et nous n'avons aucune raison de mettre sa parole en doute.

Le problème semblant se situer chez Wanadoo-Santé, j'appelle leur service technique et je tombe au bout de quelques heures sur une personne charmante qui me promet de m'envoyer les logs de leur serveur concernant mon client pour le lendemain matin. En rentrant chez moi, je me demandais si ce n'était pas une promesse de gascon, mais non, le soir même, j'avais dans ma boîte aux lettres quatre fichiers logs des transactions de mon client jusqu'à la date du jour. Non seulement les FSE étaient bien relayées par Wanadoo-Santé, mais les accusés de réception étaient retournés par la CPAM en direction du serveur de relais, accusés de réception que mon client était incapable de récupérer.

Là, je ne comprends plus. L'administrateur de la CPAM prétend n'avoir rien reçu. Wanadoo-Santé me donne en quelques minutes — donc a priori des fichiers non trafiqués — des logs indiquant le contraire puisque les ARL ne peuvent être envoyés par le serveur de la CPAM qu'à partir du moment où le lot est reçu correctement. Ça doit être l'un des grands mystères de l'informatique moderne…

Fait amusant, depuis que j'ai reçu ces fichiers de logs de la part de Wanadoo-Santé et que j'ai râlé copieusement avec les services de la CPAM, non seulement ces feuilles de soin arrivent à nouveau correctement, mais le nombre d'ARL a sensiblement augmenté.

J'ai juste l'impression que quelqu'un se moque de moi…

 

Aucun commentaire pour le moment


Formulaire en cours de chargement...