tutoriel : ecrire son script

Discussion et échanges de scripts pour la box eedomus

tutoriel : ecrire son script

Messagepar merguez07 » 12 Mai 2018 13:29

bonjour à tous,

bon je sais que ça ne servira pas à la plupart d'entre vous qui sont aguéris à la création de script mais je trouve la doc Eedomus un peu light dans le domaine et je suis en train de me créer un petit tuto.
Au cas ou ça intéresse quelques uns je mets le lien qui va bien sachant que je l'enrichis régulièrement.

Lien qui va bien

Cordialement
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: tutoriel : ecrire son script

Messagepar fullpower » 12 Mai 2018 13:58

Salut Merguez07 !

Ca c'est classe ! :D

Bon au début j'arrive presque à suivre ..après ...patatrac je pipe + rien :lol:

Je vais m'y mettre quand j'aurai un peu + de temps ...
Merci !
Programmation ARDUINO, NodeMCU, ESP8266 Eedomus + / Raspberry Pi 3 B + & Raspberry Pi 3 en programmation (Magic mirror)
Elegoo Mars - Artillery Sidewinder V2 - modélisation 3D sur Sketchup, Rhino 3d, Fusion 360, etc.
fullpower
 
Messages : 1161
Inscription : 11 Déc 2015
Localisation : Elsass

Re: tutoriel : ecrire son script

Messagepar aurique » 12 Mai 2018 15:21

Génial !! :D

merci beaucoup !
aurique
 
Messages : 223
Inscription : 04 Déc 2015

Re: tutoriel : ecrire son script

Messagepar merguez07 » 12 Mai 2018 15:39

fullpower a écrit:Bon au début j'arrive presque à suivre ..après ...patatrac je pipe + rien :lol:


lol,
je pense que si on n'a jamais fait un script c'est normal, je commence trop hard.
Je vais l'enrichir pour que ce soit plus facile à comprendre, promis

Cordialement
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: tutoriel : ecrire son script

Messagepar anne-marie » 12 Mai 2018 18:38

Excellente idée :D
Je m'y mets dès que j'ai un moment
Netatmo - Nabaztag2 - Karotz - Mirror - caméras IP - Zwave - RFXCOM - zigate - ecodevice - Enocean - orvibo - connexoon- google Home - Echo - yeelight etc....
anne-marie
 
Messages : 2456
Inscription : 19 Fév 2014
Localisation : 77

Re: tutoriel : ecrire son script

Messagepar galaksy2001 » 12 Mai 2018 21:57

Belle initiative, merci !

En plus c'est rédigé de manière très claire :thumbup:
galaksy2001
 
Messages : 727
Inscription : 06 Jan 2014

Re: tutoriel : ecrire son script

Messagepar Marcus-67 » 13 Mai 2018 20:27

Genial !
Super idée. Merci pour ce partage ;)
Marcus-67
 
Messages : 346
Inscription : 04 Mars 2013
Localisation : Elsass

Re: tutoriel : ecrire son script

Messagepar fullpower » 13 Mai 2018 21:52

@merguez07 : tu veux pas nous faire un script simple pour nos yeelight ? juste du on/off
Après si je capte, je peaufinerai (intensité lumineuse etc..)
-> un truc qu'on puisse inclure dans des règles quoi ...
:D
Programmation ARDUINO, NodeMCU, ESP8266 Eedomus + / Raspberry Pi 3 B + & Raspberry Pi 3 en programmation (Magic mirror)
Elegoo Mars - Artillery Sidewinder V2 - modélisation 3D sur Sketchup, Rhino 3d, Fusion 360, etc.
fullpower
 
Messages : 1161
Inscription : 11 Déc 2015
Localisation : Elsass

Re: tutoriel : ecrire son script

Messagepar jbourdin » 14 Mai 2018 10:07

Sur le but, c'est cool mais assez aride pour quelqu'un qui ne connait pas du la programmation et je pense que commencer par une partie "pourquoi faire un plugin" pour donner une idée de ce qui est possible serait pas mal pour éclairer le débutant.

Sur le détail du document :
Pour la coloration du json et la validation dans l'éditeur du json, je conseillerais plutôt Atom (https://atom.io) qui est plus orienté code et tout aussi gratuit que Sublime Text.

Je déconseillerais l'usage de $_GET pour accéder aux paramètres, ça contourne getArg().

Attention aussi à ne pas confondre la doc de la fonction et son appel
Code : Tout sélectionner
$city1 = getArg('city', $mandatory = true, $default = ' '); // mal écrit, ça crée deux variables $mandatory et $default pour rien. On voit que c'est une copie de la doc.

$city1 = getArg('city'); // fait exactement comme la ligne précédente

$city1 = getArg('city', false, 'Paris'); // fait le job en ne réclamant pas de valeur obligatoirement et en mettant paris par défaut


Également, lorsque le script appel l'API de la box, tu utilises
Code : Tout sélectionner
https://api.eedomus.com/get?action=periph.value&periph_id=...
, ça devrait marcher plus simplement (et sans internet) avec
Code : Tout sélectionner
http://localhost/get?action=periph.value&periph_id=...
(cf https://doc.eedomus.com/index.php/API_e ... _.28LAN.29)

Tu as écrit un $periph_id = getArg('767190') qui me semble une faute de copier coller (tu fais un getArg avec l'id que tu as déjà).

Pour la sortie en XML, c'est vraiment le truc le plus mauvais des possibilités eedomus, tu ne peux pas construire un truc autrement qu'en collant des chaines de caractères, c'est moche :(

Et si tu trouves une explication au chapitre Kezaco, je suis preneur, on voit ça dans les exemples
jbourdin
 
Messages : 90
Inscription : 21 Fév 2018

Re: tutoriel : ecrire son script

Messagepar merguez07 » 14 Mai 2018 11:01

jbourdin a écrit:Sur le but, c'est cool mais assez aride pour quelqu'un qui ne connait pas du la programmation et je pense que commencer par une partie "pourquoi faire un plugin" pour donner une idée de ce qui est possible serait pas mal pour éclairer le débutant.


ça serait sympa d'avoir ton appui pour la construction de ce tutoriel, car il est évident que tu as une certaine compétence dans le domaine de la programmation.
Si tu me donnes ton email en MP je te mettrais en accès modif sur le tutoriel ce qui te permettra de compléter /corriger le doc à volonté.

En tous cas merci pour ce retour, je vais regarder chaque remarque de près (même si je n'en comprends par certaines) et corriger mon doc.

Cordialement
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: tutoriel : ecrire son script

Messagepar stef31 » 14 Mai 2018 11:25

C'est une super initiative. Merci pour cette idée. :)
EEDOMUS V2 - RFX avec RTS
En attente de l'EEDOMUS V4
stef31
 
Messages : 2947
Inscription : 20 Août 2013
Localisation : 31

Re: tutoriel : ecrire son script

Messagepar TJL21 » 14 Mai 2018 19:43

stef31 a écrit:C'est une super initiative. Merci pour cette idée. :)

Je plussoie :thumbup: je n'ai pas encore pris le temps de regarder le contenu mais rien que l'idée me plait !
Génial ;)
TJL21
 
Messages : 141
Inscription : 15 Jan 2018

Re: tutoriel : ecrire son script

Messagepar galaksy2001 » 14 Mai 2018 22:46

J'apprécie la qualité de ce post : à la fois l'initiative de merguez07 et l'intervention pertinente et constructive de jbourdin.

Cependant, je n'ai pas le sentiment que ce tuto soit vraiment "aride" pour des novices car il est ponctué d'exemples qui me paraissent assez clairs contrairement aux argument que tu donnes jbourdin, je cite par exemple : "Je déconseillerais l'usage de $_GET pour accéder aux paramètres, ça contourne getArg()"

Je pense qu'une bonne association entre vous deux permettrait à des novices ou des flemmards comme moi de se lancer dans l'aventure des plugins de l'eedomus :D
galaksy2001
 
Messages : 727
Inscription : 06 Jan 2014

Re: tutoriel : ecrire son script

Messagepar jbourdin » 14 Mai 2018 23:28

galaksy2001 a écrit:Je pense qu'une bonne association entre vous deux permettrait à des novices ou des flemmards comme moi de se lancer dans l'aventure des plugins de l'eedomus

On est dessus, ne t'en fais pas. Mes objections plus haut ont été intégrées, j'ai accès au doc pour proposer. ;)
jbourdin
 
Messages : 90
Inscription : 21 Fév 2018

Re: tutoriel : ecrire son script

Messagepar merguez07 » 15 Mai 2018 07:26

fullpower a écrit:@merguez07 : tu veux pas nous faire un script simple pour nos yeelight ? juste du on/off
Après si je capte, je peaufinerai (intensité lumineuse etc..)
-> un truc qu'on puisse inclure dans des règles quoi ...


une chose après l'autre. pour l'instant on fait le tuto et après, si le tuto est bien fait,...tu pourras faire toi même le script yeelight :D


j'ai quand même rapidement jeté un coup d’œil et il est vrai que les scripts php proposés pour la commande des yeelight ne fonctionnent pas en l'état avec l'Eedomus car ils utilisent des commandes PHP qui sont actuellement bloquées sur notre Box.

2 solutions :
1 - faire un ticket à la team pour qu'ils étudient l'intégration des yeelight. l'as tu fait ?
2 - étudier avec un programmeur compétent comme JBourdin s'il y a possibilité de compenser l'absence des commandes verrouillées (j'ai noté rapidement les commandes Print_R, Exception, json_encode)
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: tutoriel : ecrire son script

Messagepar jbourdin » 15 Mai 2018 08:51

@fullpower, tu as un lien vers les php yeelight que tu voudrais adapter ?
Toutefois, si ça repose sur du json, vu les limitations actuelles de la box (pas de json_encode), ça va être "compliqué".
jbourdin
 
Messages : 90
Inscription : 21 Fév 2018

Re: tutoriel : ecrire son script

Messagepar fullpower » 15 Mai 2018 10:22

Hopla !

Alors ce que j'ai vu c'était là :
http://www.yeelight.com/download/Yeelig ... n_Spec.pdf

En revanche et sans jeu de mot ...c'est du chinois pour moi ...
:D
Programmation ARDUINO, NodeMCU, ESP8266 Eedomus + / Raspberry Pi 3 B + & Raspberry Pi 3 en programmation (Magic mirror)
Elegoo Mars - Artillery Sidewinder V2 - modélisation 3D sur Sketchup, Rhino 3d, Fusion 360, etc.
fullpower
 
Messages : 1161
Inscription : 11 Déc 2015
Localisation : Elsass

Re: tutoriel : ecrire son script

Messagepar merguez07 » 15 Mai 2018 10:31

jbourdin a écrit:@fullpower, tu as un lien vers les php yeelight que tu voudrais adapter ?


il y a un truc sympa ici aussi :lien vers GitHub
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: tutoriel : ecrire son script

Messagepar jbourdin » 15 Mai 2018 15:06

Alors, pour une parenthèse sur les yeelights, elles proposent une implémentation sur le réseau local, basé sur l'envoi de paquet TCP ou UDP, donc pas du tout du HTTP mais du plus bas niveau.

Il faut pousser du JSON dans les paquets, sans possibilité de les générer autrement qu'avec une chaine de caractère puisque json_encode n'est pas dispo. Donc c'est galère.

De même, on n'a que les fonctions socket_create et pas de solutions plus intégrées. Et la eedomus ancienne génération n'a pas cette possibilité.

D'un point de vue pratique, il faut mettre en œuvre la "découverte" des lampes puis le système d'ordre. Donc c'est plutôt pénible à faire. Et impossible à envisager sans avoir un device sous la main pour tester celui-ci !
jbourdin
 
Messages : 90
Inscription : 21 Fév 2018

Re: tutoriel : ecrire son script

Messagepar fullpower » 15 Mai 2018 17:23

:mrgreen: Ah....j'ai pas tout capté mais chuis au bord du suicide là ....
C'est pas très encourageant cette affaire ... :?
Mais celui qui est sur JEEDOM, comment il fait ?
Il y'a un plugin JEEDOM il me semble qui est fonctionnel pour les Yeelight/Xiaomi ...
Programmation ARDUINO, NodeMCU, ESP8266 Eedomus + / Raspberry Pi 3 B + & Raspberry Pi 3 en programmation (Magic mirror)
Elegoo Mars - Artillery Sidewinder V2 - modélisation 3D sur Sketchup, Rhino 3d, Fusion 360, etc.
fullpower
 
Messages : 1161
Inscription : 11 Déc 2015
Localisation : Elsass

Suivant

Retour vers Scripts & Périphériques du store

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 22 invité(s)