Page 4 sur 6

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 04 juin 2018, 22:40
par Laco
Theduck38 a écrit :
04 juin 2018, 22:01
Normalement c'est date... mais il est peut-être nécessaire d'ajouter la date du jour devant ton heure avant de la convertir en timestamp.
Comment ça ? Je ne suis pas sur de bien comprendre :oops:
Merci par avance :)
A chaque fois je recupere ça comme retour : date("H:i",(1528084672 + (1528142272 - 1528084672)/2))

P.S: 2 Petits liens bien utiles ;)
Sur la manipulation des dates
La conversion des timestamps pour vérification

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 05 juin 2018, 14:12
par Theduck38
Pfff, faut tout que je fasse moi-même :D

Essaye ça :
Capture.PNG
Capture.PNG (57.34 Kio) Consulté 1064 fois
En fait la fonction date ne semble pas fonctionner avec des fonctions imbriquées dans la même ligne. Donc deux infos pour y arriver.
Y'a sûrement moyen de faire mieux pour les pros du php, mais là ça fonctionne...

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 06 juin 2018, 21:38
par Laco
Salut :)

Merci @Theduck38 :D

Par contre, au bout d'un certain nombre d'itération, le calcul devient faux :( J'obtiens 30 minutes de décalage :o
Je n'y comprends rien. :oops:
Ca sent le bug :(

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 07 juin 2018, 11:13
par Theduck38
Avec les mêmes valeurs pour les deux commandes 'Lever' et 'Coucher' ?
Y'a pas une histoire de répétition des valeurs dans une commande ?

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 07 juin 2018, 17:18
par Laco
Salut :)

Très bonne idée ;)

Si je remplace dans l'équation du timestamp

mktime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600)) + (mktime(date_sunset(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600)) - mktime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600))) / 2

en remplaçant "date_sunset" par "date_sunrise"

mktime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600)) + (mktime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600)) - mktime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600))) / 2

on devrait obtenir le timestamp du date_sunrise, mais j'obtient 509 :o

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 08 juin 2018, 06:50
par Laco
Salut

Ca a l'air de marcher quand je remplace "mktime" par "strtotime" :)

Donc pour résumer, il faut 2 variables
  • Zenith_timestamp = strtotime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600)) + (strtotime(date_sunset(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600)) - strtotime(date_sunrise(#timestamp#,longitude,latitude,90+35/60,date("Z",#timestamp#)/3600))) / 2
  • Zenith = date("H:i",Zenith_timestamp)

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 11 juil. 2018, 06:48
par johndoe2011
Bosquetia a écrit :
11 nov. 2017, 09:53
gmdate("H:i", strtotime(date_sunset(#timestamp# ,1,<latitude,longitude>,90+35/60,date("Z",#timestamp#)/3600)) -strtotime(date_sunrise(#timestamp# ,1,<latitude,longitude>,90+35/60,date("Z",#timestamp#)/3600)))
bonjour,
J'essaie d'avoir l'évolution de la durée des jours en historisant mais ca ne marche pas.
Y a t il une astuce pour avoir cette historisation (j'ai juste cliqué la case historiser dans le virtuel)?
Merci

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 17 juil. 2018, 06:44
par Laco
johndoe2011 a écrit :
11 juil. 2018, 06:48
Bosquetia a écrit :
11 nov. 2017, 09:53
gmdate("H:i", strtotime(date_sunset(#timestamp# ,1,<latitude,longitude>,90+35/60,date("Z",#timestamp#)/3600)) -strtotime(date_sunrise(#timestamp# ,1,<latitude,longitude>,90+35/60,date("Z",#timestamp#)/3600)))
bonjour,
J'essaie d'avoir l'évolution de la durée des jours en historisant mais ca ne marche pas.
Y a t il une astuce pour avoir cette historisation (j'ai juste cliqué la case historiser dans le virtuel)?
Merci
Salut, tu as surement un souci avec les espaces

Code : Tout sélectionner

gmdate("H:i",strtotime(#[Maison][Informations jour][Coucher du soleil]#) - strtotime(#[Maison][Informations jour][Lever du soleil]#))
Vérifie à partir du mien

Bonne recherche ;)

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 25 sept. 2018, 23:34
par laimarc
Bonjour à vous,

je débute dans jeedom et j'ai un soucis avec le virtuel lever/coucher du soleil. En fait lorsque je fais le test je récupère bien les heures du levé et couché par contre dans mon scénario j'ai le message suivant:

Scenario : [Couloir][Ouverture porte d'entrée]. Erreur : Bloc type A : 29, heure programmée invalide : 07:23

j'essaye de me me faire la main avec jeedom en créant un scénario très simple quand j'ouvre la porte d'entrée au coucher du soleil la lumière s'allume.
Scénario.JPG
Scénario.JPG (173.12 Kio) Consulté 855 fois

Merci d'avance

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 26 sept. 2018, 08:49
par azzola
Bonjour

L'heure doit être sous la forme : 0723, il faut donc supprimer les ":".
Relit la première page, c'est expliqué.
Il faut utiliser la fonction : str_replace
Pour une utilisation dans un scénario (avec déclenchement) :

Si vous souhaitez utiliser le coucher du soleil dans un scénario, il faudra retirer les ":" en créant une nouvelle information virtuelle du type :
- CoucherSoleil : str_replace(":","",#[Jardin][Soleil][Coucher du soleil]#)

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 26 sept. 2018, 19:17
par laimarc
Bonjour

justement, je l'avais bien crée cette nouvelle information virtuelle...

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 26 sept. 2018, 20:20
par Bosquetia
Ou as-tu vu que le str_replace était là ?
Relis bien la première page

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 27 sept. 2018, 12:30
par laimarc
Bosquetia a écrit :
26 sept. 2018, 20:20
Ou as-tu vu que le str_replace était là ?
Relis bien la première page
n'étant qu'un débutant j'ai fais des recherches ailleurs et suis tombé sur ce site, du coup suis un peu perdu, ok je vais essayer de me débrouiller.

https://www.lofurol.fr/joomla/electroni ... eil-volets.

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 17 oct. 2018, 07:01
par johndoe2011
Bosquetia a écrit :
11 nov. 2017, 09:53
gmdate("H:i", strtotime(date_sunset(#timestamp# ,1,<latitude,longitude>,90+35/60,date("Z",#timestamp#)/3600)) -strtotime(date_sunrise(#timestamp# ,1,<latitude,longitude>,90+35/60,date("Z",#timestamp#)/3600)))
Bonjour,
Je cherche à historiser cette valeur .
En passant en numerique une nouvelle valeur virtuelle et en mettant #value#
181017 Capture.PNG
181017 Capture.PNG (50.95 Kio) Consulté 754 fois
je n'obtiens que les heures ...
Pourriez vous m'indiquer l'astuce pour avoir aussi les minutes ? (Faut il passer par un timestamp ?)
Merci :roll:

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 17 oct. 2018, 10:01
par f6dmn
Bonjour, il faut mettre "Autre" à la place de "Numérique".et ensuite str_replace(":","",#[Divers][LeverCoucherSoleil][dureeJour]#) pour retrouver du Numérique .
voila chez moi c est ok

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 17 oct. 2018, 22:17
par johndoe2011
f6dmn a écrit :
17 oct. 2018, 10:01
Bonjour, il faut mettre "Autre" à la place de "Numérique".et ensuite str_replace(":","",#[Divers][LeverCoucherSoleil][dureeJour]#) pour retrouver du Numérique .
voila chez moi c est ok
Merci .....ça converti bien mais impossible d'historiser .....
Ça marche chez toi ?

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 18 oct. 2018, 09:27
par f6dmn
Bonjour,
c est normal historisé du texte n'a pas de sens .... il faut historisé un numérique avec cette commande : str_replace(":","",#[Divers][LeverCoucherSoleil][dureeJour]#) qui convertit par exemple 10:43 en 1043 qui lui est vu comme un numérique .

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 27 oct. 2018, 18:06
par benoit49
Bonjour,
je pense que je vai poser une question bête mais je rencontre un petit pb avec l'info de lever de soleil.
j'ai fait un virtuel en info/autre avec cela:
date_sunrise(#timestamp# ,1, 47.059407, -0.87978,90+35/60, date("Z",#timestamp#)/3600)
le resultat est 08:30 donc OK
apres je fait cela:
time_op(str_replace(":","",#[maison][soleil][Lever]#),) //cela enlève les ':'
mais le résultat est : 830
Il me manque le zéro de début donc dans un scénario ça marche pas.
Je ne trouve pas comment ce zéro disparait.

d’avance merci pour votre aide

Ma config est debian9 et jeedom 3.2.11

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 27 oct. 2018, 18:11
par PrFalKeN
'jour

tu es sur de toi car A 830 dans un scénario fonctionne parfaitement bien !
je pense plutot que ou ton résultat est du texte et pas du numérique en qu'en plus time_op est pour faire une opération sur les heures donc +10 ou 20 mais pas lui passer une heure comme cela...

Re: [ASTUCE] Virtuel lever/coucher du soleil ... en 3 clics ! :)

Publié : 27 oct. 2018, 18:13
par Theduck38
En principe c'est censé fonctionner dans un scénario avec "830"...
Pourquoi time_op devant :
time_op(str_replace(":","",#[maison][soleil][Lever]#),) ?

Par ailleurs, je pense que la réponse à ton problème est dans la page courante de ce fil...

[Edit] ah, zut, grillé :D