# Pywebdriver - installation Ubuntu ### 1. Sur ordinateur Ubuntu 20.04 et 22.04 neuf

Ekimia s'occupe parfois l’installation : voir s’ils n’ont pas mis Pywebdriver en favori dans le navigateur internet. Si oui, voir s’ils l’ont bien installé.

Si KO, utiliser successivement les 3 commandes suivantes (le mot de passe du PC sera nécessaire) : Pour trouver facilement ces commandes, rendez-vous sur ce pad : [https://pad.cloud117.fr/p/pywebdriver](https://pad.cloud117.fr/p/pywebdriver) ```shell sudo apt install python-is-python3 wget https://raw.githubusercontent.com/akretion/pywebdriver/master/debian/install.sh sudo chmod +x install.sh sudo ./install.sh # S'il propose 2 versions, ne pas prendre celle par défaut, mais l'autre # À "Handle HTTPS(Y/n)" répondre Y (pour oui) ```

Si le Firefox a un mot de passe principal, il y aura une étape en plus. Le terminal demandera *Enter Password or Pin for "NSS Certificate DB"* et il faut écrire le mot de passe principal

Un redémarrage peut être nécessaire avant l'étape 2 ↓

### ### 1bis. Sur ordinateur Ubuntu venant d'une version antérieure - Enlever le dépôt ancien que l'on utilisait pour télécharger pywebdriver - Chercher "Logiciels et mises à jour" dans le menu des applications - Dans "Autres logiciels", enlever les lignes contenant pywebdriver - Actualiser - **S'assurer qu'on a bien python3.\* et désinstaller python2.\* (sinon il y aura des erreurs de droits d'accès et rien ne se lancera)** ```shell python # Voir si il y a marqué Python 2.*.* (* étant la version utilisé) # Si oui, il faut passer en python3 qui doit être sur l'ordi # Commencer à taper puis →tabulation pyth →tab # Il doit y avoir python3 # Sinon mettre à jour : https://www.pythoncentral.io/how-to-update-python/ # Désinstaller python2 sudo apt remove python2.* # Et installer ce qu'il faut sudo apt install python-is-python3 #Tester et lancant python python # Doit apparaitre une version de python en 3.quelquechose CTRL+D #pour en sortir ``` - Suivre les commandes suivantes ```shell # Désinstaller l'ancienne version de pywebdriver sudo apt remove pywebdriver sudo apt purge pywebdriver # Installer la nouvelle version wget https://raw.githubusercontent.com/akretion/pywebdriver/master/debian/install.sh sudo chmod +x install.sh sudo ./install.sh # À "Handle HTTPS(Y/n)" répondre Y (pour oui) # Il va poser une question sur le fichier de configuration ↓ ```
[![image.png](https://librairie.grap.coop/uploads/images/gallery/2023-05/scaled-1680-/5gcimage.png)](https://librairie.grap.coop/uploads/images/gallery/2023-05/5gcimage.png)répondre **Y**
### 1ter. Erreurs à l'installation ##### Les tests sur l'écran de tests ne fonctionnent pas - **Avez-vous redémarrer l'ordinateur** ? Sinon faîtes le avant de retester - Vu à partir du 5 mai sur des Ubuntu 22.04 en python 3.10, le test d'impression bugue → tester sur un Odoo car ça fonctionne quand même peut-être ! [Issue en cours](https://github.com/akretion/pywebdriver/issues/133) ##### Vous avez l'erreur "you may have broken packages" [![image.png](https://librairie.grap.coop/uploads/images/gallery/2023-07/scaled-1680-/Khmimage.png)](https://librairie.grap.coop/uploads/images/gallery/2023-07/Khmimage.png) ```shell sudo apt-get check ``` ##### Si c'est une erreur de certif et que vous voulez passer en http et pas en https Pour cela : - dans le config.ini, mettre host=localhost et commenter ou supprimer les deux lignes de certificats - relancer pywebdriver - normalement en [http://localhost:8069](http://localhost:8069) ça marche ##### Vous voulez recommencer l'installation ? ```shell sudo apt remove pywebdriver # ça supprime le paquet sudo apt purge pywebdriver # ça supprime le fichier de configuration # et là recommencer l'installation sudo ./install.sh ``` ### ### 2. Finalisation et vérification de l'installation #### Interface de test Se connecter à l'adresse [https://localhost:8069/](https://localhost:8069/) Pour passer l'alerte de sécurité de Firefox, clic sur « Avancé » puis « Accepter le risque et poursuivre » ​Cliquer sur "Statut de la Posbox" : on voit ici les appareils bien connectés au point de vente et ceux sans signal. On peut tester la liaison pour l'imprimante, l'afficheur client et la liaison TPE. #### Sur Odoo Vérifier que l'adresse [https://localhost:8069/](https://localhost:8069/) est bien renseignée dans Odoo >> Point de vente >> Configuration >> Point de vente >> Matériel Proxy. Une fois Pywebdriver installé, et lors de la connexion à Odoo, on voit en haut à droite du point de vente les appareils non reliés : ![](https://librairie.grap.coop/uploads/images/gallery/2020-07/scaled-1680-/image-1594390045805.png)

Certaines actis ont des paramétrages spécifiques, par exemple plusieurs points de vente rattachés à une seule imprimante ticket de caisse (cf. CHE) => dans ce cas la caisse principale est rattachée à Pywebdriver via [https://localhost:8069/](https://localhost:8069/) , mais les caisses secondaires ont une autre adresse IP de renseignée dans Configuration >> Point de vente

### 3. Cas d'un ordi qui communique avec une IP locale Exemple chez BAJ, voici le fonctionnement au 1er octobre 2024 [![image.png](https://librairie.grap.coop/uploads/images/gallery/2024-10/scaled-1680-/image.png)](https://librairie.grap.coop/uploads/images/gallery/2024-10/image.png)

Pour que cela fonctionne, il faut changer le **config.ini**

```bash # Accéder au fichier de config cd /etc/pywebdriver/ # Le modifier avec les droits admin sudo nano config.ini # Commenter le host # Avant : host=127.0.0.1 # Après : ;host=127.0.0.1 # Enregistrer en faisant CTRL + X (puis O pour enregistrer et Entrée) ``` ### Différents soucis #### Nouvel appareil (imprimante, TPE, afficheur client·e) Voir tuto dédié : [https://librairie.grap.coop/books/r%C3%A9serv%C3%A9-au-service-info/page/rajouter-un-nouveau-appareil-imprimante-tpe-afficheur-client](https://librairie.grap.coop/books/r%C3%A9serv%C3%A9-au-service-info/page/rajouter-un-nouveau-appareil-imprimante-tpe-afficheur-client) ##### Erreur de droits d'accès ?

Redémarre après une belle installation clean !

Vérifier qu'il y a bien la règle de droits d'accès : ```shell cd /lib/udev/rules.d cat 99-pywebdriver.rules SUBSYSTEM=="usb", GROUP="usbusers", MODE="0660" ``` Vérifier que le compte utilisateur est bien dans les bons groupes ```shell groups adm cdrom sudo dip plugdev lpadmin sambashare ```