SOINS 2000 : Logiciel de gestion pour cabinet médical

Soins2000 est un logiciel propriétaire et payant de télétransmission pour infirmier - infirmière, kinésithérapeute, orthophoniste.

Il est téléchargeable gratuitement sur le site de l'éditeur.

Cette page n'a pas pour objectif de faire la promotion de ce logiciel, mais de permettre à ceux qui l'auraient choisi de le faire tourner sur un système d'exploitation libre. Il existe évidemment des alternatives : voir le portail Santé.
  • Ce logiciel étant conçu pour Windows, il sera nécessaire d'installer Wine (lire le paragraphe installation)

Ce logiciel pour Windows fonctionne sous Ubuntu avec wine :

  • Installer wine.
Depuis la version 3.04 de Soins2000, la version 5 de WINE est nécessaire (actuellement en Release Candidate) pour que les mises à jour de Soins2000 s'effectuent sans blocage. Il faut actuellement installer la version de développement winehq-devel.

Pour Ubuntu 18.04 et 19.04, ne pas oublier auparavant d'installer les librairies libfaudio0 (64 et surtout 32 bits : par exemple pour Ubuntu 18.04 Bionic libfaudio0_19.07-0~bionic_amd64.deb et libfaudio0_19.07-0~bionic_i386.deb) sinon, il y aura une erreur de dépendance qui bloquera l'installation de WINE.

  • Configurer WINE en version Windows 8.1 ou 10 depuis le programme de Configuration de WINE, onglet Applications :
    winecfg
  • Télécharger le logiciel soins2000 sur le site de l'éditeur.
  • Autoriser l'exécution de soins2000.exe (clic droit sur le fichier soins2000.exe, puis Propriétés, puis Permissions : cocher la case "Autoriser l'exécution du fichier comme un programme") et le lancer avec wine (clic gauche sur le fichier soins2000.exe). Valider les choix par défaut lors de l'installation.
  • Deux fichiers sont créés sur le Bureau d'Unbuntu : "SOINS 2000.lnk" et "SOINS 2000.desktop". Supprimer le .lnk (raccourci pour Windows) et autoriser l'exécution de "SOINS 2000.desktop". L'icône de Soins2000 s'affichera alors automatiquement.
L'ajout manuel de la librairie msvcp60.dll dans le répertoire ~/.wine/drive_c/windows/system32 (testé avec Ubuntu 10.10 + Wine-1.2.1) ne semble plus nécessaire car elle est déjà présente dans wine 1.6.1 (testé avec Ubuntu 12.04 LTS 64 bits + wine 1.6.1). De même avec Wine 4.0.3 et Wine 5.0-rc5.

Pour désinstaller Soins2000, il faut utiliser la commande suivante dans un terminal et suivre la procédure :

wine uninstaller

Lancer le logiciel soins2000 avec l'icône présente sur le bureau. Pour le reste, contacter l'éditeur…

Connexion du TLA avec Soins2000 via WINE

Pour permettre à Wine de communiquer avec le lecteur de cartes branché en USB, il doit exister un lien symbolique entre le port série ("tty") sous lequel le lecteur de cartes (TLA) a été monté par Ubuntu (Unix/Linux) et le port série ("com") utilisé par Wine. (pour plus d'informations : Site officiel WineHQ - ports série et parallèle)

  • Avec les versions de Wine inférieures à 2.8, il faut saisir dans un terminal une commande du type (à adapter selon votre matériel) :
    ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1

    Par exemple, le TLA modèle Vital'Act3S est reconnu sous /dev/ttyACM0. La commande pour créer le lien avec par exemple le port COM33 sera :

    ln -s /dev/ttyACM0 ~/.wine/dosdevices/com33
  • Depuis Wine 2.8 (testé avec Ubuntu 16.04 LTS 64 bits + wine 4.0.3 + TLA Vital'Act-3S + Soins2000 version 3.0.4), après branchement du TLA sur un port USB, il y a un port com qui est automatiquement lié au port ttyACM0. Pour connaître le bon port com (ex : "com33"), ouvrir un terminal et taper la commande :
    ls -l ~/.wine/dosdevices/

    Ou alors ouvrir dans Naulilus le dossier ~/.wine/dosdevices/ et afficher les propriétés du dernier fichier "comXX" (clic droit sur ce fichier, puis "Propriétés"). La cible du lien devrait être : /dev/ttyACM0. Sinon, chercher parmi les autres fichiers comXX. A défaut, suivre la procédure manuelle suivante pour créer un nouveau lien avec un autre port com (autre que les ports com déjà existants dans le dossier ~/.wine/dosdevices/).

METHODE MANUELLE DE CONNEXION DU LECTEUR DE CARTES AVEC WINE (à n'utiliser que si la méthode automatique ne fonctionne pas)

Pour savoir sous quel nom est reconnu votre TLA, branchez votre TLA puis à partir d'un terminal :

  • Listez les ports USB (branchez votre TLA avant de lancer cette commande) pour s'assurer qu'il est bien reconnu par le système d'exploitation
    lsusb

Parmi les retours, une ligne devrait apparaître avec le nom du modèle de votre TLA (par exemple : "Ingenico Vital'Act 3S"). Sinon, cela signifie que votre appareil n'est pas bien reconnu par le système.

  • Affichez les derniers messages du noyau
    dmesg | tail

    La première ligne de réponse à cette commande doit vous donner le nom du fabricant (ex : "Manufacturer: XIRING"), et la seconde le tty sous lequel votre TLA est reconnu (ex : "cdc_acm 6-1:1.0: ttyACM0: USB ACM device")

  • Recherchez eventuellement dans les messages du noyau les "tty" via la commande
    dmesg | grep tty
  • Il faut ensuite adapter la commande de création du lien symbolique entre votre appareil (ex : ttyACM0) et le port com choisi (ex : com1)
    ln -s /dev/ttyACM0 ~/.wine/dosdevices/com1
Si le fichier ~/.wine/dosdevices/com1 existe déjà, il vous faudra choisir un nouveau nom de fichier (par ex. "com33") ou alors renommer le fichier "com1" existant (ce qui pourrait poser d'autres problèmes…)
Il faut aussi adapter la commande à la variable d'environnement WINEPREFIX utilisée lors de l'installation de Soins2000. Par exemple, si elle a été modifiée par Winetricks lors de l'installation de Visual C++ 2008 Express, WINEPREFIX n'est plus ~/.wine/ mais /home/$USER/.local/share/wineprefixes/vc2008express/

Vérifier dans les propriétés du lanceur de Soins2000 situé sur le bureau.

Testé avec Ubuntu 12.04 LTS 64 bits + wine 1.6.1 + TLA Vital'Act-3S + Soins2000 version 2.1.0

Créer le lien :

ln -s /dev/ttyACM0 /home/$USER/.local/share/wineprefixes/vc2008express/dosdevices/com1

Une alternative consiste à créer un lien à partir de l'identifiant du lecteur de cartes, dont le nom figure dans le dossier /dev/serial/by-id/ (ici, le Vital'Act-3S de Xiring) :

ln -s /dev/serial/by-id/usb-XIRING_XIRING_Vital_Act-3S-if00 ~/.wine/dosdevices/com1
  • Il n'est toujours pas possible d'avoir accès au TLA depuis Soins2000 à cause d'une restriction des droits d'accès : lorsque le TLA est connecté, le lien com33 créé précédemment appartient au groupe "dialout".
Pour connaître le groupe auquel appartient le lien, effectuer un clic droit sous Nautilus sur le fichier com33 (ou sur le fichier /dev/serial/by-id/usb-XIRING_XIRING_Vital_Act-3S-if00, ou encore sur /dev/ttyACM0) puis "Propriétés" puis l'onglet "Permissions". Ou alors taper dans un terminal
ls -l /dev/ttyACM0

Il faut donc ajouter l'utilisateur courant au groupe "dialout" :

sudo adduser $USER dialout

Puis fermer la session de l'utilisateur (ou éteindre le PC) et se reconnecter (ou redémarrer le PC) pour la prise en compte de ce changement.

  • Démarrer Soins2000 via Wine en cliquant sur le raccourci créé sur le bureau lors de l'installation de Soins2000, ou depuis un terminal :
    env WINEPREFIX="/home/$USER/.wine" wine C:\\s2000\\s2000b.exe

L'accès au TLA est maintenant possible, il est bien reconnu par le logiciel. Il est possible de forcer la détection par Soins2000 en sélectionnant le port "com33" dans les options avancées de Gestion du lecteur de cartes (fenêtre Paramétrage de Soins2000). Attendre la fin de l'initialisation. Pour vérifier si cela fonctionne, il est possible de "Lire la configuration du lecteur" depuis la fenêtre Gestion du lecteur de cartes.

(Testé avec Ubuntu 14.04 LTS 64 bits + wine 1.6.2 + TLA Vital'Act-3S + Soins2000 version 2.1.0)

(Testé avec Ubuntu 16.04 LTS 64 bits + wine 4.0.3 (Win 8.1-64bits)+ TLA Vital'Act-3S + Soins2000 version 3.0.4)

(Testé avec Ubuntu 18.04 LTS 64 bits + wine 5.0-rc5 (Win 10-64bits) + TLA Vital'Act-3S + Soins2000 version 3.0.5)

Connexion du TLA avec Firefox

L'entrée en vigueur des BSI au 1er janvier 2020 (à compléter sur le site AmeliPro) et l'instauration de la Messagerie Sécurisée de Santé (MSSanté) nécessite une connexion du TLA/lecteur de cartes CPS avec le navigateur internet.

Installation du GALSS

L'installation du Gestionnaire d’Accès aux Lecteurs Santé Social (GALSS) permet aux systèmes d'exploitation Windows, Linux et Macintosh de disposer des fichiers de configuration et des bibliothèques nécessaires pour dialoguer avec les lecteurs de cartes CPS, que ce soit avec le protocole PC/SC (Personal Computer / Smart Card) ou avec le PSS (Protocole Santé Social).

Ubuntu peut gérer le protocole PC/SC (voir la page dédiée Cartes à puce sous Ubuntu) donc le GALSS n'est a priori pas nécessaire pour les lecteurs de cartes CPS en mode PC/SC. Il est en revanche indispensable pour ceux en mode PSS (par exemple, tous les TLA Vital'Act 3S avant la version 4.19, version à partir de laquelle ils supportent les deux protocoles PSS et PC/SC).
  1. Récupérer le fichier galss-x.xx.xx-x.i386.rpm (32 bits) ou le fichier galss-x.xx.xx-x.x86_64.rpm (64 bits) auprès de l'éditeur de votre logiciel santé (l'accès aux fichiers du GIE-Sesam-Vitale semble être réservé aux "industriels" : GIE-SV)
  2. Convertir ce fichier en .deb
    sudo alien --script galss-x.xx.xx-x.x86_64.rpm
  3. Brancher votre lecteur de cartes/TLA à votre ordinateur
  4. Installer le GALSS : soit via la logithèque Ubuntu en cliquant le fichier galss-x.xx.xx-x.x86_64.deb, soit via un terminal
    sudo dpkg -i galss-x.xx.xx-x.x86_64.deb
  5. Modifier avec un éditeur de textes le fichier de configuration galss.ini présent dans le dossier /usr/local/galss en renseignant le numéro xx du port COM utilisé par le TLA (s'inspirer du fichier galss.ini présent dans ~/.wine/drive_c/windows) dans [CANAL1] Index=xx
  6. Modifier avec un éditeur de textes le fichier de configuration galss.ini présent dans le dossier /usr/local/galss en ajoutant la ligne COMxx=/dev/ttyACM0 dans le paragraphe [MAP_DEVICE]. (/dev/ttyACM0 correspond au port sur lequel Unbuntu a reconnu votre TLA - voir le paragraphe précédent)
  7. Redémarrer votre ordinateur

Installation de l'extension pour Firefox

Pour utiliser les Composants Cryptographiques CPS sous Firefox, il est nécessaire d'installer l'extension "WebExtension CPS". Cette extension sera proposée automatiquement lors de l'installation de la Cryptolib CPS (voir le paragraphe suivant) par l'outil de diagnostic fourni par l'ANS sur le site gouvernemental de l'ASIP Santé: DiagCPS. Sinon, voici les liens pour la télécharger :

  • Pour les versions de Firefox inférieures à 57, l'Extension CPS 6.0.15 est nécessaire.
  • Pour les versions de Firefox supérieures, l'extension peut être obtenue à partir du site de test SSL de l'ASIP Santé : TESTSSL - ASIP Sante. Lien direct vers la version 6.0.19.

Installation de la Cryptolib CPS

La Cryptolib CPS est un middleware d'accès à la carte CPS. "La Cryptolib CPS v5 est un composant logiciel installé sur les postes de travail. Elle permet aux systèmes d’exploitation de tirer pleinement profit des fonctionnalités offertes par la carte CPS3 et notamment d’exploiter les fonctionnalités offertes par les volets IAS-ECC (signature, authentification) et sans contact de cette carte." (Manuel d’installation et d'utilisation de la Cryptolib CPS « ASIP Santé / PUSC / PSCE » Version 5.1.3 du 08/09/2015)

Elle est indispensable pour se connecter de manière sécurisée (avec la Carte de Professionnel de Santé - CPS) aux sites AmeliPro (pour les déclarations de BSI) ou MSSanté.

  1. Récupérer le fichier CryptolibCPS-5.0.15-x86_64.rpm en lançant l'outil de diagnostic fourni par l'ANS sur le site gouvernemental de l'ASIP Santé: DiagCPS. Sinon, le lien direct vers la version 64 bits est ici
  2. Conversion du .rpm en un .deb
    sudo alien -k -c CryptolibCPS-5.0.15-x86_64.rpm
  3. Installation
    sudo dpkg -D 3777 -i CryptolibCPS-5.0.15-x86_64.deb

L'installation de la CryptolibCPS sous Linux installe aussi un "Gestionnaire de la carte CPS" qui peut être lancé depuis un terminal :

sudo /opt/santesocial/CPS/bin/cpgeslux
L'installation des librairies de chiffrement CryptoAPI dans Wine, soit depuis Soins2000 (via la page de démarrage de Soins2000 : "Téléservices" ou en cliquant sur "Accéder à AmeliPro" à côté de la case BSI dans l'onglet "Prescription"), soit directement en exécutant le fichier /.wine/drive_c/s2000/galss/msi/cryptolibCPS-5.0.45-x64.msi, installe aussi deux autres petits programmes dans le répertoire /.wine/drive_c/Program Files/santesocial/CPS/ : Gestionnaire de la carte CPS (cpgesw64.exe) et Gestionnaire des certificats CPS (CCM.exe). L'exécution de cpgesw64.exe permet entre autres de vérifier que Wine accède bien au lecteur de cartes CPS (TLA). Le processus CCM.exe fonctionne aussi mais peut entrer en conflit avec Firefox lors de l'authentification par CPS.

Configuration de Firefox

Ouvrir les préférences de Firefox (about:preferences). Tout en bas de la page "Vie privée et sécurité". Cliquer sur "Périphériques de sécurité…", puis sur "Charger". Donner un nom explicite au module (par exemple "CrytoCPS ASIP PKCS#11"), puis cliquer sur "Parcourir…" et sélectionner le fichier "libcps3_pkcs11_lux.so" dans /usr/lib64/ (cette bibliothèque se trouve aussi dans /opt/santesocial/CPS/lib/libcps3_pkcs11_lux.so - répertoire conseillé par l'ASIP).

Pour tester le module, brancher le TLA/lecteur de cartes CPS, puis sélectionner le sous-module "PSS Reader on CPS" (ou "CPS3v3-xxxxxxxx") juste sous le module "CrytoCPS ASIP PKCS#11" et cliquer sur "Connexion". Le code du porteur de la CPS doit être demandé, et des informations seront alors affichées.

Test de l'installation

  1. Lancer Firefox et saisir dans la zone adresse : http://testssl.asipsante.fr puis cliquer sur le lien https://testssl.asipsante.fr
  2. La fenêtre de demande de saisie des 4 chiffres du code porteur de la carte CPx apparaît
  3. Choisir le certificat X.509 d’authentification de la carte CPx à utiliser

En cas de succès de l’authentification, la page d'informations de la carte CPx apparaît.

(Testé avec succès avec Ubuntu 16.04 LTS + galss-3.41.00-1.x86_64.rpm + CryptolibCPS-5.0.15-x86_64.rpm + WebExtension CPS 6.0.19 + TLA Vital'Act 3S v2.27 + Firefox 72)

(Testé avec succès avec Ubuntu 18.04 LTS + galss-3.41.00-1.x86_64.rpm + CryptolibCPS-5.0.15-x86_64.rpm + WebExtension CPS 6.0.19 + TLA Vital'Act 3S v2.27 + Firefox 72)

Services WEB de l'ASIP Santé

Contrairement à ce qui est annoncé par l'ASIP Santé (Lettre d'information - POSTE DE TRAVAIL & Veille Technologique Version mise à jour le mardi 22 janvier 2019), l'offre de services par Accès Web de l'ASIP Santé est pleinement accessible sous Linux :

La création de la messagerie sécurisée M@iliz-MSSanté n'accepte pas Linux : "L’OS linux sans version n’est pas supporté par l’autocréation". Il suffit de modifier temporairement le User Agent de Firefox (avec par exemple l'extension "User-Agent Switcher") pour faire passer son système pour Windows, et la création de la Messagerie Sécurisée devient possible. Vous pouvez ensuite désinstaller l'extension User-Agent car elle n'est plus nécessaire par la suite pour accéder à la messagerie sécurisée.

FIXME Le scanner (testé avec une imprimante multifonction EPSON) ne fonctionne pas avec Soins2000 sous Wine (Testé avec Ubuntu 14.04 LTS 64 bits + wine 1.6.2 + Soins2000 version 2.1.0) . Le logiciel freeze lors de la recherche du scanner, et finit par se fermer.

Sous Ubuntu 16.04 LTS 64 bits + wine 4.0.3 + Soins2000 version 3.0.4, le scanner de l'imprimante multifonction est reconnu, la numérisation se lance (avec deux passages !) mais le programme Soins2000 gèle à l'import de la numérisation et doit fermer (fenêtre WINE "Erreur du programme").

Numériser les ordonnances avec son logiciel de scanner préféré sous Ubuntu, puis les importer sous Soins2000 via le bouton "Scanner" puis "Importer/Exporter".

Si l'installation de Soins2000 via Wine ne fonctionne pas, il est possible de l'installer sur un système d'exploitation Windows émulé ou virtualisé.

Pré-requis

  • Nécessite un système d'exploitation Windows et son numéro de licence authentique
  • Processeur supportant la virtualisation. Pour cela, voir Ici

Installation

  1. Installer un logiciel de virtualisation
  2. Créer une machine virtuelle Windows
  3. Lancer sa machine virtuelle Windows, puis comme vous l'auriez fait sous un système d'exploitation Windows :
    1. Installer soins2000.exe fourni par l'éditeur
    2. Installer les drivers du TLA, du scanner, de l'imprimante
    3. Pour virtualbox : dans les paramètres USB de la machine virtuelle, créer un filtre pour que le TLA soit monté automatiquement lors du démarrage de votre système virtualisé. Pour les autres périphériques (imprimante, scanner), un simple clique droit sur l'icône USB de la fenêtre de virtualisation permet de monter les appareils reconnus par Ubuntu.
Testé sous Ubuntu 12.04 LTS 64 bits pour la création d'une machine virtuelle Windows XP SP3 :
  • Avec kvm : installation de Windows XP longue ; reconnaissance des ports usb plus "délicate"
  • Avec virtualbox : installation de Windows XP rapide ; gestion des ports usb simple

Utilisation

  1. Lancer votre machine virtuelle Windows
  2. Lancer le logiciel soins2000 avec l'icône présente sur le bureau de Windows virtualisé
  3. Pour le reste, contacter l'éditeur…

Via WINE

  • Non reconnaissance du scanner sous WINE
  • Freeze du programme
  • Sous Ubuntu 16.04 LTS, mise à jour de Soins2000 impossible avec Wine 4.0.2 en mode Windows XP : "Vous ne pouvez pas mettre à jour vers la dernière version de Soins2000 car elle nécessite Windows XP SP3 ou une version supérieure". La dernière version de Soins2000 accessible et fonctionnelle avec Wine 4.0.2 sous la version XP est la version 2.1.1 du 04/03/2018.
  • Sous Ubuntu 16.04 LTS, le passage de Wine 4.0.2 (ou 4.0.3) en mode Win10-64 permet de mettre à jour Soins2000 mais il y a un freeze lors de l'installation de la mise à jour (blocage pendant l'affichage du surcadre "Installation…" dans la fenêtre de Soins2000, a priori lié à l'installation des SSV et du GALSS) à la version 3.0.4 de Soins2000 du 12/11/2019.
  • Sous Ubuntu 16.04 LTS, avec Wine 4.0.3 en mode Win10-64, la désinstallation complète suivie d'une réinstallation de Soins2000 ne provoque plus de blocage à l'installation mais au lancement apparaît une fenêtre "Impossible de continuer car certains fichiers sont manquants". Les librairies SSV ne peuvent pas se charger correctement (pas de facturation ni de télétransmission possible). Le logiciel Soins2000 demande à passer en mode administrateur ou à forcer la réinstallation du GALSS. Il s'en suit un problème au lancement de s2process.exe "galsvw64.exe".
En rétrogradant Wine du mode Windows 10-64bits à Windows 8.1-64, le problème des SSV et du GALSS n'apparaît plus. La version 3.0.4 de Soins2000 du 29/11/2019 se lance sans erreur apparente.
  • Sous Ubuntu 16.04 LTS, avec Wine 4.0.3 en mode Win8.1-64, l'installation de la mise à jour de Soins2000 de la version 3.0.4 à celle 3.0.5 n'arrive pas à terme (surcadre "Installation…" reste affiché). Le processus s2000c.exe "install manuelle GALSS" lancé lors de cette installation consomme ~30% des processeurs pendant une durée indéterminée. Tuer le processus s2000c.exe permet de stopper l'installation et rend Soins2000 de nouveau utilisable.
En remplaçant la version 4.0.x de WINE par la version 5.0 (version de développement 5.0-rc4 issue du dépôt wine-dev), les mises à jour de Soins2000 s'installent à nouveau correctement. (testé avec Ubuntu 16.04 LTS + WINE 5.0-rc4 + Soins2000 v.3.0.5 du 10-01-2020)

Via VirtualBox

  • Le système d'exploitation Windows ne se lance plus suite à une mise à jour de la version de VirtualBox ? Pensez à vérifier si les versions du programme VirtualBox et du pack d'extension sont rigoureusement identiques (voir ici).
Ne pas avoir la même version entre le pack d'extensions et le programme VirtualBox peut empêcher le lancement de l'OS virtualisé. Par exemple : Windows XP SP3 virtualisé par VirtualBox 4.3.34 sur Ubuntu 14.04 LTS ne se charge pas jusqu'à son terme : il est stoppé après le chargement du driver "mup.sys", le système tentant ensuite de charger les périphériques USB (plus d'informations ici). La mise à jour du pack d'extensions de 4.3.10 à 4.3.34 a résolu le problème.

Contributeurs principaux : vavincavent, DamS (pour la reconnaissance du TLA, le scanner, la virtualisation, les problèmes connus)

Dernière mise à jour : 19-01-2020

  • soins2000.txt
  • Dernière modification: Le 19/01/2020, 14:16
  • (modification externe)