Bonjour je débute avec jeedom et je ne suis pas familiarisé avec le language des commandes dans les blocs mais j’ai une bonne maitrise du VBA donc avec votre aide je dois pouvoir progresser.
Voici la commande qui me pose problème.
(#time# >= time_op(#[Maison][Météo][Coucher du soleil]# ET #time# <= time_op(#[Maison][Météo][Lever du soleil]#,+60) ET #[Jardin][Prise multiple )][Etat]# == 0
L’objectif du scénarion est d’allumer les lumières du jardin quand je sort de la maison. Le déclancheur est un detecteur de mouvement et les lumières s’allument 3 minutes si : (c’est la commande à problème)
La plage horaire et comprise entre le couher du soleil et le lever plus une heure
La lumiére du jardin n’est pas déjas alumé car dans ce cas il n’est pas nécessaire de l’alumer et surtout il ne faut pas l’éteindre au bout de 3 minutes car le soir j’allume le jardin pendant 1 heure.
Ma commande dans le bloc si doit faire cela mais cela ne fonctionne pas.
Merci pour votre aide et de façon plus globalle où est-il possible de trouver des tutos ou de la documentations détaillée sur la syntaxe des commandes Jeedom ou le langage de programmation .
Pour tester une plage horaire qui couvre minuit il faut mettre OU
Pour tester une plage horaire qui ne couvre pas minuit il faut un ET
Or dans ton cas, tu couvres minuit puisque tu testes du coucher au lever…
Ensuite ça n’est pas bon time_op(#[Maison][Météo][Coucher du soleil]#
puisque tu ne fais aucune opération sur l’heure !
Donc ton test devrait plus ressembler à
SI
(#time# >= #[Maison][Météo][Coucher du soleil]# OU #time# <= time_op(#[Maison][Météo][Lever du soleil]#,+60)) ET #[Jardin][Prise multiple )][Etat]# == 0
Ensuite je te conseille de remplacer les ET et les OU par && pour ET
|| pour OU
Merci déjas beaucoup pour ces informations que je vai tester ce soir. J’apprecie beaucoup votre aide pouvez-vous me dire comment je peux progresser en étudiant soit de la documentationsoit des ouvrages et où et lesquels?
Ranplacer ET par II est surmement une bonne idée elle ne doit certainement rien au hasard mais a la connaissance acquise. Alors merci de me dire ce que vous me conseillez pour en acquir une.
Salut @Gally,
Comme le dis @anon53349806, le 1er time_op sur le coucher du soleil ne sers à rien vu que tu ne fais pas d’opération dessus (pas de calcul).
time_between(#[Maison][Météo][Coucher du soleil]#),time_op(#[Maison][Météo][lever du soleil]#,+30))
devrais suffire.
Cordialement.
quand tu es sur la page des scénarios, clique en haut à droite sur le point d’interrogation ce qui t’emmènera directement sur la documentation pour les scénarios.
Merci pour l’info, j’ai déjas été sur cette page interessante, c’est un catalogue très complet mais pas un cours sur la façon d’utiliser ce qui est dans le catalogue; notamment au niveau de la syntaxe. Une virgule ou une parenthèse au mauvais endroit et la fonction que l’on veux utiliser ne fonctionne pas.
C’est ce que je voudrait apprendre comme j’ai appris à programmer en VBA pour excel ou en C++ pour arduino . Avec jeedom je n’ai pas encore trouvé les supports pédagogiques qui permetent de faire cela.
Certes je sais que je peux compter sur vous et que j’arivevrai à termes à être plus autonome. Mais c’est domage de vous solliciter pour des choses qui seront au départ très basiques.
Merci à tous pour votre aide mon problème est résolu et pour ma progression dans la maîtrise de jeedom et de ses commandes je progresserai grasse aux tutos et avec votre aide. Il n’y a apparamment pas de documents ou de livre structurée pour se former sur le sujet. Mais ce n’est pas grave.
On en est tous là.
Lire la doc et se faire la main en utilisant au mieux nos compétences.
Pense à clôturer ton sujet si tu penses avoir tes réponse.
Bonne journée
Le sujet n’est pas clot malheuresement. Mais avant de dévleopper comment cloture t-on un sujet.
Voila le problème restant.
si time_between(#time#, time_op(#[Maison][Météo][Coucher du soleil]#),time_op(#[Maison][Météo][Lever du soleil]#,+30))
Fonctionne comme testé ce matin mais la condtion complette avec le ET ne passe pas.
si time_between(#time#, time_op(#[Maison][Météo][Coucher du soleil]#),time_op(#[Maison][Météo][Lever du soleil]#,+30)) ET #[Jardin][Prise multiple )][Etat]# == 0
Jeedom me la signale en erreur mais je ne voie pas où est le problème.
Pourquoi tu supprime time_op devant la l’experssion couher du soleil en fait la commande :
time_between(#time#, time_op(#[Maison][Météo][Coucher du soleil]#),time_op(#[Maison][Météo][Lever du soleil]#,+30))
Fonctionne c’est quand je rajoute le ET que cela bloque