yana-server icon indicating copy to clipboard operation
yana-server copied to clipboard

comment lancer socket.php lorsque mon RPI 2 détecte le WIFI

Open juliendiotworldtour opened this issue 8 years ago • 10 comments

Bonjour à toute la communauté YANA! aujourd'hui j'ai réfléchi à une solution intéressante pour ne pas devoir taper à chaque fois "sudo php /var/www/yana-server/socket.php" lors du lancement de YANA4ALL.

En effet je suis souvent amené à couper mon hotspot et à le réactiver et systématiquement, je dois retaper cette commande pour utiliser YANA4ALL.

Je voulais donc savoir quelles lignes de code je pouvais taper et dans quel(s) fichier(s) pour qu'à chaque fois que le Raspberry Pi détecte et se connecte à mon Hotspot, il lance la commande "sudo php /var/www/yana-server/socket.php" automatiquement.

Merci beaucoup!

@ldleman , j'espère que tu tiens le coup et que le développement de Yana pour Windows IoT se passe comme tu le souhaites!

juliendiotworldtour avatar Mar 29 '16 14:03 juliendiotworldtour

Je vais mieux merfi :), pour windows iot faut que je fasse le point, un contrib m'a envoyé une version a tester mais je n'ai pas encore eu le temps de m'y pencher.

il est possible de lancer cette commande automatiquement au boot de ta machine linux en créant un service ou en utilisant le cron @REBOOT, en revanche jignore comment récuperer l'évenement de la connexion hotspot.

Il te met quoi comme message d'erreur socket.php quand tu perd la connexion ? Je peux peut être faire en sorte qu'il tente de se reconnecter tout seul toutes les x minutes tant que le fait de couper la connexion ne fait pas carrement quitter socket.php

ldleman avatar Mar 31 '16 09:03 ldleman

Salut Idleman,

Alors en fait, lorsque je coupe et réactive mon hotspot, l'application Yana4all n'arrive pas à se connecter au yana-server.

Du coup j'utilise l'application android JuiceSSH pour rentrer la commande " sudo php /var/www/yana-server/socket.php" à chaque connection.

Comme je ne passe que par l'interface graphique yana4all, le seul message d'erreur visible est "connection au serveur impossible" lorsque socket.php n'est pas lancé.

Y a t il moyen de rendre socket.php actif de façon permanente, qu'il y ait connection ou non à mon hotspot ?

Merci Idleman !

DIOT Julien Globeblogger in Outdoor Sports wordtour-outdoorexperience.com

Le 31 mars 2016 11:42 AM, Idleman [email protected] a écrit :

Je vais mieux merfi :), pour windows iot faut que je fasse le point, un contrib m'a envoyé une version a tester mais je n'ai pas encore eu le temps de m'y pencher.

il est possible de lancer cette commande automatiquement au boot de ta machine linux en créant un service ou en utilisant le cron @REBOOT, en revanche jignore comment récuperer l'évenement de la connexion hotspot.

Il te met quoi comme message d'erreur socket.php quand tu perd la connexion ? Je peux peut être faire en sorte qu'il tente de se reconnecter tout seul toutes les x minutes tant que le fait de couper la connexion ne fait pas carrement quitter socket.php

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub

juliendiotworldtour avatar Mar 31 '16 14:03 juliendiotworldtour

Merci pour cette réponse idleman. Donc une fois que je suis dans cron @reboot j'ajoute la ligne sudo PHP /var/www/yana-server/socket.php ?

juliendiotworldtour avatar May 09 '16 07:05 juliendiotworldtour

Pas besoin du sudo, le cron s'execute par defaut avec les droits de l'utilisateur qui a ajouté le cron. Donc logue toi en root, tape crontab -e Ajout la ligne @reboot php /var/www/yana-server/socket.php Et normalement socket.php se relancera a chaques reboot

ldleman avatar May 09 '16 11:05 ldleman

Merci Idleman, ça marche au top!

juliendiotworldtour avatar May 11 '16 20:05 juliendiotworldtour

Perso ce sservice est placé dans le fichier /etc/inittab avec un respawn mode comme suit:

Ya:23:respawn:/usr/bin/php /var/www/yana-server/socket.php

aladin2000 avatar May 18 '16 21:05 aladin2000

Un autre solution c'est le super serveur inetd : https://debian-handbook.info/browse/fr-FR/stable/sect.inetd.html en plus si le socket php se plante, il est redémarré automatiquement.

theos10 avatar May 20 '16 19:05 theos10

Merci l'attibut respawn redémarre aussi le process en cas de plantage du process. La méthode inetd est elle en mesure de réagir en cas de 'blocage' ?

Sinon, as tu un exemple de ligne à ajouter à inetd pour une socket en php ?

aladin2000 avatar May 20 '16 21:05 aladin2000

tu peux essayer cette ligne : yana stream tcp wait www-data /var/www/yana-server/socket.php a mettre de le fichier /etc/inetd.conf il faut aussi ajouter : yana 999/tcp # Socket php Yana dans le fichier /etc/services

theos10 avatar May 31 '16 18:05 theos10

Je fais le test d'ici qq jours et je te tiens courant

Le 31 mai 2016 20:40:41 CEST, FOURNIER Ghislain [email protected] a écrit : dixit>tu peux essayer cette ligne : dixit>yana stream tcp wait www-data dixit>/var/www/yana-server/socket.php dixit>a mettre de le fichier /etc/inetd.conf dixit>il faut aussi ajouter : dixit>yana 999/tcp # Socket php Yana dixit>dans le fichier /etc/services dixit> dixit>--- dixit>You are receiving this because you commented. dixit>Reply to this email directly or view it on GitHub: dixit>https://github.com/ldleman/yana-server/issues/202#issuecomment-222781217

Envoyé de mon appareil Android avec K-9 Mail. Veuillez excuser ma brièveté.

aladin2000 avatar May 31 '16 20:05 aladin2000