Echec Lancement démon ajaxSystem

Est-ce-qu’une gentleman pourrait nous expliquer la configuration de la partie SIA ?
Cela ressemble beaucoup à la configuration du plugin SIA que j’avais sur mon Jeedom avant de migrer vers le plugin dédié AJAX, mais ici, impossible de le faire marcher.

J’ai ce message :
ajaxSystem Attention je pense qu'il y a un soucis avec le démon que j'ai relancé plus de 3 fois consécutivement
Les logs en debug donnent ceci :

[2021-12-08 13:15:03][INFO] : Lancement démon ajaxSystem : /usr/bin/python3 /var/www/html/plugins/ajaxSystem/resources/ajaxSystemd/ajaxSystemd.py --loglevel debug --siaport 15501 --account 73883 --key {hidden_key} --callback http://127.0.0.1:80/plugins/ajaxSystem/core/php/jeeAjaxSystemSia.php --apikey v{hidden_info} --cycle 0.3 --pid /tmp/jeedom/ajaxSystem/deamon.pid
...
[2021-12-08 13:15:33][ERROR] : Impossible de lancer le démon ajaxSystemd, vérifiez le log

Pour info, je me rappelle qu’avec l’ancien plugin SIA, j’ai réussi à faire marcher la chose en désactivant le cryptage. Ici il semblerait que le cryptage soit effectif par défaut. Peut être que c’est l’origine de mon problème.
Mais comment diable est-ce-que ce plugin marche chez vous ?

Jeedom 4.1.27 sur VM Debian 10
Synology NAS DSM 7
Plugin version 2021-12-07 01:16:59

Bonjour,
Sans la log en debug du demon personne ne pourra t’aider, tu peux aussi préciser la version de l’os ca serait top.

Regarde aussi la doc il y a pas mal d’info que j’ai ajouter qui peut justement concerner ton soucis

Bonjour Loic,
Merci pour ton aide.
Je vais tenter d’avoir mes logs en debug… la case est déjà cochée, je ne vois pas ce que je peux faire de plus.
Tu es le développeur de ce plugin ?

EDIT
Voici l’erreur en question
Error: importing module jeedom.jeedom

1 « J'aime »

As tu la version de l’os ?

Oui, j’avais édité mon premier post
Debian 10
Un petit google me dit que je peux réparer ça avec cette commande
sudo apt-get install -y python3-pip
mais je l’ai déjà ce paquet, et up-to-date.
python --version me donne 2.7.16

Les dépendances sont ok ?

Oui, 0 souci durant l’installation des dépendances. Je l’ai refait au cas où, mais le script se déroule sans erreur.

Au passage, je complète les numéros de version de python/pip
python --version
2.7.16
pip --version
18.1 from /usr/lib/python2.7/dist-packages/pip (python 2.7)
python3 --version
3.7.3
pip3 --version
18.1 from /usr/lib/python2.7/dist-packages/pip (python 2.7)

La je vois pas il me faudrait vraiment la log complete en debug du demon pour comprendre. Après il sert que pour le SIA ca n’empeche absolument pas le fonctionnement du plugin

J’aime bien quand tout fonctionne impeccablement :slight_smile:
J’ai regardé, je vois un try dans le fichier python qui lève une exception.

try :
    from Jeedom.jeedom import *
except ImportError :
    printf("Erreur: import module Jeedom.jeedom")
    sys.exit(1)

Je n’ai jamais fait de python de ma vie, mais j’en déduis que ce module est manquant.
Quel paquet est responsable de ce module ?

Log de l’installation des dépendances (qui disparait après un court moment … encore un bug …) :

Launch install of ajax system dependancy
Hit:1 http://apt.piduino.org stretch InRelease
Hit:2 http://ftp.fr.debian.org/debian buster InRelease
Hit:3 http://ftp.fr.debian.org/debian buster-updates InRelease
Hit:4 http://security.debian.org/debian-security buster/updates InRelease
Hit:5 https://deb.nodesource.com/node_14.x buster InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
python3-pip is already the newest version (18.1-5).
python3-setuptools is already the newest version (40.8.0-1).
python3 is already the newest version (3.7.3-1).
python3-dev is already the newest version (3.7.3-1).
python3-pyudev is already the newest version (0.21.0-1).
python3-requests is already the newest version (2.21.0-1).
0 upgraded, 0 newly installed, 0 to remove and 142 not upgraded.
Requirement already satisfied: pysiaalarm==3.0.0b9 in /usr/local/lib/python3.7/dist-packages (3.0.0b9)
Requirement already satisfied: dataclasses-json==0.5.2 in /usr/local/lib/python3.7/dist-packages (from pysiaalarm==3.0.0b9) (0.5.2)
Requirement already satisfied: importlib-metadata; python_version < "3.8" in /usr/local/lib/python3.7/dist-packages (from pysiaalarm==3.0.0b9) (4.8.2)
Requirement already satisfied: pycryptodome>=3.9.7 in /usr/local/lib/python3.7/dist-packages (from pysiaalarm==3.0.0b9) (3.12.0)
Requirement already satisfied: stringcase<2.0.0,==1.2.0 in /usr/local/lib/python3.7/dist-packages (from dataclasses-json==0.5.2->pysiaalarm==3.0.0b9) (1.2.0)
Requirement already satisfied: marshmallow-enum<2.0.0,>=1.5.1 in /usr/local/lib/python3.7/dist-packages (from dataclasses-json==0.5.2->pysiaalarm==3.0.0b9) (1.5.1)
Requirement already satisfied: marshmallow<4.0.0,>=3.3.0 in /usr/local/lib/python3.7/dist-packages (from dataclasses-json==0.5.2->pysiaalarm==3.0.0b9) (3.14.1)
Requirement already satisfied: typing-inspect>=0.4.0 in /usr/local/lib/python3.7/dist-packages (from dataclasses-json==0.5.2->pysiaalarm==3.0.0b9) (0.7.1)
Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata; python_version < "3.8"->pysiaalarm==3.0.0b9) (3.6.0)
Requirement already satisfied: typing-extensions>=3.6.4; python_version < "3.8" in /usr/local/lib/python3.7/dist-packages (from importlib-metadata; python_version < "3.8"->pysiaalarm==3.0.0b9) (4.0.1)
Requirement already satisfied: mypy-extensions>=0.3.0 in /usr/local/lib/python3.7/dist-packages (from typing-inspect>=0.4.0->dataclasses-json==0.5.2->pysiaalarm==3.0.0b9) (0.4.3)
Everything is successfully installed!

Le problème est probablement là

Pip3 doit retourner python 3 comme version et pas python2.
Ne jamais aller trifouiller sois même dans les versions!

Désinstallez pip et réinstallez et ça réglera le problème.

sudo python3 -m pip uninstall pip
sudo apt-get install -y python3-pip
1 « J'aime »

pardon, je suis parti trop vite.

pip -version
pip 18.1 from /usr/lib/python2.7/dist-packages/pip (python 2.7)
pip3 -version
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

Il est livré avec tout plugin ayant un démon python.

Pouvez-vous executer cette commande:

pip3 list

il doit manquer un paquet que jeedom.jeedom import mais qui en fait n’est pas nécessaire réellement, genre serial.

1 « J'aime »
> pip3 list
Package             Version
------------------- -------------
asn1crypto          0.24.0
certifi             2018.8.24
chardet             3.0.4
cryptography        2.6.1
dataclasses-json    0.5.2
distro-info         0.21
entrypoints         0.3
fail2ban            0.10.2
httplib2            0.11.3
idna                2.6
importlib-metadata  4.8.2
iotop               0.6
keyring             17.1.1
keyrings.alt        3.1.1
marshmallow         3.14.1
marshmallow-enum    1.5.1
mypy-extensions     0.4.3
pip                 18.1
pycrypto            2.6.1
pycryptodome        3.12.0
pycurl              7.43.0.2
PyGObject           3.30.4
pyinotify           0.9.6
pysiaalarm          3.0.0b9
PySimpleSOAP        1.16.2
python-apt          1.8.4.3
python-debian       0.1.35
python-debianbts    2.8.2
pyudev              0.22.0
pyxdg               0.25
reportbug           7.5.3-deb10u1
requests            2.21.0
SecretStorage       2.3.1
setuptools          40.8.0
six                 1.12.0
stringcase          1.2.0
systemd-python      234
typing-extensions   4.0.1
typing-inspect      0.7.1
unattended-upgrades 0.1
urllib3             1.24.1
wheel               0.32.3
zipp                3.6.0

bingo :wink:

en workaround:

sudo apt-get install -y python3-serial

@Loic, il faudrait virer le import serial dans jeedom.py (et la class jeedom_serial()) si pas utilisée au cas où le paquet n’est pas installé

Quelqu’un peut apporter aussi une correction à ce plugin ?
C’est bien cette dépendance qu’il manquait.
Le plugin fonctionne avec le module SIA et la clé de cryptage !

EDIT:
et sans vouloir abuser, quelqu’un pourrait regarder cet autre ticket ?

Il devrait être simple à corriger.

Bonjour

  1. la correction sera faite demain exceptionnel je ne vais pas faire une nuit blanche sur jeedom aujourd’hui
  2. as tu ouvert un ticket ? Pour rappel et comme dit souvent c’est un community pas le support ici il n’y a donc aucune obligation de correction ni même de réponse. Si tu veux un retour faut ouvrir un ticket

ah zut, je ne connais vraiment pas le fonctionnement de la communauté/système de ticketing.
Peux-tu me passer le lien où je dois déclarer mon ticket ?
Et non, pas de release obligatoire ce soir :slight_smile: personne ne va en mourir.

Tu as tout dans la documentation premier pas sur notre site de doc.

C’est documenté :wink:
https://doc.jeedom.com/fr_FR/howto/remonter_un_bug