Aller au contenu
jojo

Google Calendar vers HC3

Recommended Posts

Mon premier Tuto HC3 …

 

Idée
Le principe est de faire faire des actions à la HC3, sur base d'instructions mises dans un/des calendriers Google.
Le script appelle une méthode d'un QA.


Perso, avec mon compte Google principal, j'ai créé 9 calendriers pour la domotique.

C'est le même et unique script qui permet de tout faire.
Il y a deux utilisations principales prévues :
    1. Action à faire uniquement au début de l'événement
    2. Actions à faire au début ET à la fin des événements.

 

Configuration Commune du script
Paramètre de la box :
Précisez l'IP externe, le port et le protocole de communication. (un reverse proxy c'est mieux qu'un simple port-forwarding)
! Sécurité : créez un utilisateur spécifique (donc ne pas utiliser admin) qui n'aura accès qu'au(x) QA(s) utilisé(s) par le(s) script(s)
Identification des calendriers :
Pour trouver l'identifiant du calendrier :
Allez dans les paramètres du calendrier
Dans la dernière section, tout en bas
    Intégrer l'agenda
    ID de l'agenda : d7t37al9xxxxxxxxxxx66o4rg@group.calendar.google.com
Action :
Si dans les StartVal#/EndVal# il est précisé Title, il transmettra à la box le titre de l'événement.
Fréquence d'exécution du script :
Par défaut, la valeur est configurée à 1 min. Cette valeur doit correspondre à la fréquence à laquelle le script tourne pour vérifier s'il y a des événements à traiter. (cfr déclencheurs, plus bas)

 

Action à faire au début
Mettez "" à toutes les variables End*
Exemple de configuration du script : GoogleCalendar.gos
Exemples d'utilisation :  rappels pour arroser les plantes, pour sortir un certain type de poubelle, …

 

Actions à faire au début ET à la fin de l'événement
Exemple de configuration du script : Thermo.gos
Exemples d'utilisation :  gérer le chauffage de chaque pièce (début = confort, fin = retour en mode éco/réduit) : perso, c'est mon utilisation principale. Pour plus de facilité dans l'interface Google, j'ai créé autant de calendriers que de thermostats, mais tout aurait pu être dans un seul calendrier, puisque j'ai mis le nom du thermostat dans le titre de l'événement. Autre idée d'utilisation : programmation de l'arrosage automatique ou de la pompe de la piscine.

 

Installation finale
Créez autant de scripts que nécessaires dans GoogleScript
https://script.google.com/home
Il faudra ensuite, pour chaque copie du script, lui définir un déclencheur  :
    
    xd48.png

ig0h.png
    
    Lors de sa première exécution, Google pose des questions de sécurité. => à lancer manuellement la première fois.
    
    Je joins 3 fichiers de scripts :
        ○ GoogleCalendar.gos : avec exemple pour traiter uniquement le début d'un événement.
        ○ Thermo.gos : avec exemple de traitement de début et de fin d'événements.
        ○ Test.gos : script minimal pour tester la connexion et le QA
    Ainsi que la version pdf du présent tuto.
GoogleCalendar.gos

Thermo.gos

Test.gos

Tuto - Google Calendar vers HC3.pdf

  • Like 6

Partager ce message


Lien à poster
Partager sur d’autres sites

Cool !
Je teste ça dès que possible !!!!

Envoyé de mon M2012K11AG en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

bonsoir,

 

Venant de chez Eedomus, la gestion avec le calendrier intégré est tout de même de la grande utilité, pour le moment je n'y comprends rien sur la HC3.


Mon rythme de vie et simple géraient avec 4 modes Seuls, Week-end, Congé et école.

Ce mode s’active automatiquement avec comme base les jours de la semaine demandée.

Puis les modes activent des scénarios pour la montée et descente des volets.

 

Mon souci est dans le chauffage , je veux que le chauffage s'active selon une tranche horaire bien spécifique qui peut changer de jour en jour , donc à piloter avec les calendriers .

Mais du coup cet à ce moment que je suis largué , google calendrier ces OK mais après ? je n'ai aucune notion dans l'écriture de script google .

 

Ne peut-on pas simplement créer un scénario qui lie le google calendrier, dès que la tranche horaire est activée les scénarios fait ce qui est demandé?


Exemple je sélectionne vendredi de 10H00 à 13H00 indiquant présence dans le calendrier, le scénario lie ça et donc il active le chauffage sur 21°C puis s'arrête une fois 13H00 passés.

 

Merci pour vos réponses

Partager ce message


Lien à poster
Partager sur d’autres sites

En fait l'idée est de faire faire à ta HC3 ce qui est mis dans le calendrier Google.

Pourquoi ce calendrier externe à la box ? Car il est facilement modifiable; sans devoir accéder la box.

Pour le chauffage, j'ai 1 calendrier par pièce où je définit le mode de chauffe de la pièce; et cela est ensuite géré par un script LUA et GEA.

J'ai un autre calendrier pour les poubelles, arroser les plante, ... Ici également c'est géré par LUA sur la box.

 

Il ne faut rien scripter côté Google (sauf mettre les bon paramètres), toute l'intelligence se trouve dans le script LUA.

Je te mets en exemple les 2 QA qui sont appelés par mes Google Calendar.

GoogleCalendar.fqa

Gestion_Chauffage.fqa

Ai-je répondu à ta question ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Donc si je comprends bien , un calendrier différent pour chaque action que tu veux faire .

Ce qui amène à faire scénario écrit en LUA afin de réaliser l'action souhaitée .

 

Du coup le box va aller chercher son info dans le calendrier approprié. Mais elle lie quoi? Pour elle la case est occupée donc elle réalise l'action et donc peu importe ce qui est écrit, où elle li le titre qui est donné.

Si dans le cas où elle li le titre, pourquoi créer plusieurs calendriers?

 

Merci pour tes réponses

Partager ce message


Lien à poster
Partager sur d’autres sites

non,

si tu veux uniquement faire des actions au début de l'événement, un calendrier, un script Google et un script LUA suffisent (le script lua fera zn fonction de ce qui est écrit dans le titre de l'événement. Mais si tu veux faire plusieurs calendriers, tu peux, le script Google le permet. Perso, je n'ai qu'un seul calendrier pour tous mes événement dont seule la date/heure de début import (sortir certaines poubelles, arroser plantes, ...)

Si tu veux également gérer la fin de l'événement, tu crées un second calendrier, avec l'autre script Google et un autre LUA?. un exemple est la gestion de mon chauffage : début de l'événement, je passe en mode confort, et fin je retourne en mode eco. Ici également j'utilise le titre de l'événement pour définir la "pièce" concernée. Pour ma facilité, j'ai créé un agenda par pièce, mais j'aurais pu tout mettre dans un seul agenda.

 

La box ne va rien lire du tout, c'est le script Google qui dit à la box quand il y a qqch à faire. Et maintenant s'il n'y a pas de script LUA pour interpréter les actions, la box ne fera rien

Partager ce message


Lien à poster
Partager sur d’autres sites

Après de longue heure acharné à tenter de comprendre se que tu as écris dans tes script ( et surtout pour paraître moins bête :8:) je lâche l’affaire.

 

J'ai uniquement besoin de deux choses:

1. Lorsque c'est écris "repas" il faut mettre le thermostat à 20,5°C

2. Lorsque c'est écris "Louis école" il faut activer le mode Louis école

 

Exemple calendrier

14929497_Capturedcran2022-12-13214933.thumb.png.859cc6d74d7778fbc6ecf84c3cd5027f.png

 

Mon pauvre début d'écriture: :20:

1717284573_Capturedcran2022-12-13215531.thumb.png.4e6a36e2d8dfc20c1da3510c8f725abc.png

 

 

Merci pour ta patiente et ton aide

Partager ce message


Lien à poster
Partager sur d’autres sites

d'après ta seconde copie d'écran, tu semble vouloir faire une SCENE en LUA. Je n'ai AUCUNE expérience avec les scènes de la HC3, et mon Google script appelle in QA, pas une scène.

 

Analysons tes besoins 1 à 1 ...

 

1) Repas : il faut mettre la température du thermostat à 20,5°C (=temp correspondant au mode = Con) au début, et je suppose le mettre à 19°C (=temp correspondant au mode = Eco) à la fin ? J'utiliserais le script qui gère le début et la fin des événements = script Thermo.gos et le script LUA (Gestion Chauffage) que je t'ai donné comme exemple (et que tu DEVRAS adapter à ton besoin).

2) Louis école : la box doit faire qqch uniquement au début de l'événement ou au début Et à la fin ?

 

Comme tu vois, il faut être très précis dans ce qu'on veux. Et seulement quand on sait précisément ce qu'on veut, on peut traduire cela.

Malheureusement, avec toute la meilleure volonté du mon, je n'ai pas encore compris tous tes besoins, et (même si j'avais le temps) je n'en sais pas assez pour te développer une solution

Partager ce message


Lien à poster
Partager sur d’autres sites

La vie générale de la maison est calé sur mon planning, le chauffage est géré via l'outil climat qui régule la température de toute la semaine du lundi au dimanche.

C'est toutes les semaines la même chose.

 

Cependant parfois mon fils rentre entre midi et je souhaite donc que le logement soit chauffé à 20,5°C (au lieu de 19°C de base)

C'est une chaudière piloté via le contact du thermostat (ID n°58)

 

1) Donc pour le repas, il faut uniquement indiquer 20,5°C au thermostat, puis retour état initial

 

Ensuite, selon les jours, Semaine (lundi au vendredi), week-end (samedi dimanche), congé, j'ai des modes qui s'activent.

Les modes actives des scénarios qui pilotes différentes choses, monté/descente volet, activation/extinction éclairage, machine à café...

 

2) Simplement activer le mode dédié, soit "Louis école"

 

Partager ce message


Lien à poster
Partager sur d’autres sites

je commence à comprendre ton besoin.

Je propose que tu ouvres un topic spécifique (qui fasse référence à celui-ci) car on s'écarte du support de ce tuto

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×