ldleman / yana-server

Interface PHP de domotique Y.A.N.A (You Are Not Alone)
http://projet.idleman.fr/yana
107 stars 59 forks source link

Les scénarios ne fonctionnent plus =( #298

Open valentin8709 opened 7 years ago

valentin8709 commented 7 years ago

Salut Idleman! Alors ça fait un petit bout de temps que je ne bidouille sur Yana, et je me suis rendu compte que mes scénarios ne fonctionnent plus, mais je ne sais pas depuis quand =/

En gros, si je fais un test manuel dans l'interface web, ça fonctionne. Le socket est bien lancé, le port est ouvert dans le firewall (toute façon tout ce qui se passe en localhost est ouvert), le cron du root est bien configuré et fonctionne (testé avec une commande bidon), mais mon scénario ne se lance pas...

Par contre le 'nerve' ne marche pas, quand je lance la commande suivante j'obtiens ça:

/var/www/yana-server/nerve /var/www/yana-server/action.php -O /dev/null 2>&1 Launch nerves... gpio: Unable to open GPIO direction interface for pin 4: No such file or directory wiringPiISR: unable to open /sys/class/gpio/gpio4/value: No such file or directory

Est-ce que j'ai cassé qqch ou c'est normal? Une idée de ce qui pourrait en être la cause?

Merci d'avance =) Et au passage, j'aime bien le dernier update, les petites modifs graphiques sont cools!

ldleman commented 7 years ago

Salut valou, Normalement je n'ai pas fait de modifs majeures sur les scénario depuis plusieurs mois, donc pas normal. A priori si ça fonctionne manuellement le problème doit venir du cron.

as tu regardé dans les logs d'apache à l'heure ou le cron devrait tourner ? et dans le logs yana ? Sinon le mieux serait de placer un log dans ton crontab voir ce qui le fait planter.

Pour nerve, il ne semble pas pouvoir acceder a ton pin raspberry n°4, est il utilisé/grillé ou autre ?

valentin8709 commented 7 years ago

C'est bien ce qui me semblait pour les modifs. Pour le cron, en fait tu as raison le problème n'est pas à ce niveau, les scénarios s'exécutent bien. J'ai testé en ajoutant une commande serveur (touch /home/pi/bloub.txt) et le fichier est bien crée à l'heure définie.

Ce qui ne fonctionne pas:

Pour nerve, quelle est son utilité exactement? Sinon oui le pin n°4 est utilisé par une sonde 1-wire (fonctionnelle, non grillée), c'est grave docteur?

Merci pour ton aide et ton temps =)

ldleman commented 7 years ago

Nerve écoute les changements sur les pin gpio en temps réel et le renvois a yana afin de pouvoir exécuter des scenar, pour le moment a ne s'applique qu'au pin 4, si tu as quelque chose dessus et que tu n'a pas besoin d'utiliser les "nerfs" de yana, inutile de lancer l'executable.

Concernant les scenar en double, je viens de tester je n'ai pas le soucis, essaye de vider ton cache ? tu es sur quel browser ?

Essaye de créer un scenar qui vas uniquement lancer une requête url toutes les minute s et regarde le log cron qui en découle pour voir ce qui bloque.

valentin8709 commented 7 years ago

Je suis sur Firefox, dernière version stable. J'ai vidé le cache et tout le reste (cookies etc...) et rien. J'ai fais le test comme tu dis, je précise que si j'ouvre le lien dans un navigateur ça fonctionne, mais dans un scénario aucune action.

Logs syslog:

Mar 13 10:57:01 yana CRON[8286]: (root) CMD (wget --no-check-certificate https://localhost/yana-server/action.php?action=crontab -O /dev/null 2>&1)
Mar 13 10:58:01 yana rsyslogd-2007: action 'action 17' suspended, next retry is Mon Mar 13 10:59:31 2017 [try http://www.rsyslog.com/e/2007 ]
Mar 13 10:58:01 yana CRON[8301]: (root) CMD (wget --no-check-certificate https://localhost/yana-server/action.php?action=crontab -O /dev/null 2>&1)
Mar 13 10:59:01 yana CRON[8316]: (root) CMD (wget --no-check-certificate https://localhost/yana-server/action.php?action=crontab -O /dev/null 2>&1)

Logs Apache (access.log):

::1 - - [13/Mar/2017:10:58:06 +0100] "OPTIONS * HTTP/1.0" 200 128 "-" "Apache/2.4.10 (Raspbian) OpenSSL/1.0.1t (internal dummy connection)"
::1 - - [13/Mar/2017:10:58:02 +0100] "GET /yana-server/action.php?action=crontab HTTP/1.1" 200 2178 "-" "Wget/1.16 (linux-gnueabihf)"
::1 - - [13/Mar/2017:10:58:07 +0100] "OPTIONS * HTTP/1.0" 200 128 "-" "Apache/2.4.10 (Raspbian) OpenSSL/1.0.1t (internal dummy connection)"
::1 - - [13/Mar/2017:10:59:01 +0100] "GET /yana-server/action.php?action=crontab HTTP/1.1" 200 2178 "-" "Wget/1.16 (linux-gnueabihf)"

Et rien dans les erreurs Apache (errors.log).

Là je vois pas du tout où le problème peut être... Je vais tester une fresh install voir comment ça le fait. Mais j'avoue que c'est un peu relou de refaire des installations de zéro et reconfigurer tous les widgets etc.. Une feature d'export de conf en sélectionnant ce que l'on veut exporter serait juste génial!

victor81000 commented 7 years ago

juste pour signaler que j'ai le meme probleme : scenario avec parole+ url+commande systeme: j'entre les commandes systeme comme je le ferai dans le terminal ( pour moi sudo start motioneye ) l'url est celle de l'interface de motioneye et la parole est "okay" sur les trois, seule la parole fonctionne. j'ai essayé avec des pauses, sans pauses, diverses url pour voir mais non,ca n'ouvre rien et motion eye reste inactif, MAIS quand je fais le scenario en manuel cela me met dans le bas de la page scenario: ====== Execution 13/03/2017 17:48====== 8 effets à executer

Execution de l\'effet "command" commande server lancée : sudo modprobe bcm2835-v4l2 Execution de l\'effet "sleep" Pause de 5 secondes Execution de l\'effet "command" commande server lancée : sudo systemctl start motion Execution de l\'effet "sleep" Pause de 5 secondes Execution de l\'effet "command" commande server lancée : sudo systemctl start motioneye Execution de l\'effet "sleep" Pause de 5 secondes Execution de l\'effet "url" Execution url définie à : "http://192.168.1.23:8765" Execution de l\'effet "talk" Parole : okay comme si le scenario avait été executé, sauf que...non ;) jesuis sous opera mais j'ai essayé avec yana4all android et idem, a part la parole, rien ne passe.