Eedomus et agenda Google…

L'eedomus est la première box que j'ai vu ayant prévu la gestion d'un calendrier pour les jours de vacances, la définition des périodes de la journée, etc…

Une fonction vraiment très pratique ! Toutefois, elle peut s'avérer encore un peu limitée ou contraignante pour des personnes ayant des emplois du temps très variables, ce qui nécessite de modifier la configuration de l'agenda sur la box.

C'est par exemple mon cas: travaillant en informatique, il peut arriver de travailler la nuit, ou le week end, si une maintenance serveur est nécessaire. Selon mes contraintes, il m'arrive également d'aller travailler en train (le plus courant) ou en voiture (si mes horaires le demandent): là mon heure de lever ne sera pas du tout la même.

De ce fait, il peut m'être nécessaire de modifier l'agenda de la box 2 ou 3 fois par semaine. Après avoir gouté à l'agenda Google synchronisé avec la Vera, très pratique à l'utilisation, j'ai cherché un moyen de reproduire cela avec l'eedomus. C'est aujourd'hui possible en utilisant le capteur HTTP récemment ajouté à l'eedomus.

I. Pré requis

A l'image de ce que je vous ai présenté il y a quelques jours pour la station météo, il va être nécessaire d'utiliser un script PHP stocké sur un serveur FTP (votre Nas, un serveur extérieur, etc…). C'est contraignant, mais l'API Google étant un peu complexe à exploiter, c'est pour le moment la seule solution que j'ai trouvé.

Il vous faudra donc:

A lire également:
Mise à jour de la box eedomus: support des radars de présence ZigBee, et nouveaux périphériques Zwave !

Si vous n'avez pas d'agenda Google, vous pouvez en créer un gratuitement ici.

Pour ma part, j'ai un calendrier Google réservé à mes congés. Les congés sont indiqués dans l'entête de la journée (un congé marqué de telle heure à telle heure ne fonctionnera pas):

calendriercongesPS: pour éviter l'apparition de caractères bizarres sur l'eedomus, évitez les caractères spéciaux dans les libellés des évènements. Par exemple ici “Congé Payé” est écrit “Conge Paye” sans les accents.

II. Installation des scripts

L'installation des scripts est très simple: il suffit de vous connecter à votre serveur FTP, puis de les déposer dans le répertoire de votre choix:

ftpCes trois fichiers sont à copier tels quels, aucune modification n'est nécessaire.

Pour le dernier fichier, agenda.php, il faudra renseigner l'adresse privée de votre calendrier.

Pour cela, rendez vous dans les paramètres de votre calendrier Google. Tout en bas, vous trouverez une icône XML, dans la partie adresse URL privée:

parametresagendaFaites un clic droit sur cette icône, et récupérez l'adresse. Cette adresse est l'adresse de votre calendrier, mais codée de façon à ce qu'elle ne soit pas publique, de ce genre:

http://www.google.com/calendar/feeds/qsnmyourtcndaoeh6mt3663ing%40group.calendar.google.com/private-1ac30ee2598467tfb4807d7096dc6/basic

Copiez cette adresse dans le fichier agenda.php:

agendaphpC'est la seule chose à modifier. Une fois renseigné, il n'y a plus qu'à le mettre sur le serveur FTP avec les autres fichiers:

ftp2Pour vérifier que tout fonctionne bien, il suffit de taper l'adresse web de ce fichier dans votre navigateur web, par exemple http://www.monserveurweb.com/agenda/agenda.php

On doit obtenir quelque chose de ce genre:

[xml]

<!–?<span class=”hiddenSpellError” pre=””–>xml version=”1.0″ encoding=”utf8″ ?>

A lire également:
Eedomus lance une nouvelle fonctionnalité de protection par IA !

<conges>

<aujourdhui>Conge Paye</aujourdhui>

<demain>Fete de la Victoire</demain>

</conges>

[/xml]

On a donc ici un fichier xml parfaitement exploitable par l'eedomus.

Pour mes besoins, j'ai décidé d'y faire figurer l'état du jour, mais également l'état du lendemain.

III. Configuration sur la box eedomus

Nous n'avons plus qu'à créer nos deux capteurs HTTP pour l'état du jour et l'état du lendemain:

capteursL'état du jour sera configuré de cette façon:

aujourdhuiet celui du lendemain:

demainAinsi, toutes les 60min, l'eedomus interrogera le calendrier Google pour connaitre l'état de la journée en cours et celui du lendemain (la fréquence peut être ajustée selon vos besoins):

013S'il n'y a rien de prévu dans le calendrier, l'eedomus remontera “RAS”. On peut tout à fait personnaliser les valeurs pour obtenir quelque chose de plus sympa, dans le paramétrage du capteur HTTP:

valeursCe qui permet d'obtenir cela:

travail2Ces états sont bien entendu utilisables dans les scénarios:

scenarioAinsi, il est tout à fait possible de se passer de l'agenda de l'eedomus et d'utiliser son propre agenda Google, ce qui évite de devoir en gérer plusieurs.

De plus, l'état du lendemain me permet de faire d'autres actions que je ne pouvais pas effectuer avec l'agenda de l'eedomus: par exemple quand le lendemain est une journée travaillée, je coupe les alertes vocales de mon système multiroom plus tôt histoire de ne pas être dérangé quand on est couchés. Le volet de ma porte fenêtre se ferme également plus tard si le lendemain est une journée à la maison.

A l'utilisation c'est vraiment très pratique, puisque j'utilise tous les jours mon calendrier Google: cela me permet de gérer mon emploi du temps, de le synchroniser sur mon iPhone, de le partager avec ma femme, etc…  L'utilité de l'agenda Google n'est plus à démontrer. Aujourd'hui, sans rien faire de plus, ce calendrier est également consulté par ma box eedomus, qui gère alors la maison en conséquence.

A lire également:
Guide: Intégrer son alarme Ajax à Home Assistant, c'est possible !

Enfin, ce procédé peut être utilisé pour diverses choses. J'ai par exemple configuré un autre calendrier pour le ramassage des poubelles, car avec les jours fériés et le ramassage des déchets recyclables tous les 15 jours, je suis toujours en train de me demander quelle poubelle sortir quel jour :p

Je peux ainsi recevoir une notification push la veille au soir, ou même une notification via mon Karotz.

On peut imaginer faire un calendrier pour les anniversaires, un pour gérer le chauffage, etc…

Pour information, cet article peut contenir des liens affiliés, sans aucun impact sur ce que vous gagnez vous même ou le prix que vous pouvez payer pour le produit. Passer par ce lien vous permet de me remercier pour le travail effectué sur le blog chaque jour, et d'aider à couvrir les dépenses du site (hébergement, frais de port pour les concours, etc.). Ca ne vous coute rien, mais ca m'aide beaucoup ! Merci donc à ceux qui joueront le jeu !

Inscrivez vous à notre newsletter !

Ne ratez plus aucun article, test de produit ou guide, grâce à un mail dans votre boite chaque vendredi !

6 Commentaires
  1. Bonjour, je voulais vous signaler que le script hébergé sur maison et domotique ne fonctionne plus depuis quelques jours. Je suis obliger de mettre le chauffage avec le smartphone tous les matins. La galère quand on est habitué à notre petit confort. lol.
    Si quelqu’un a une solution ?

  2. Bonjour Cédric,
    Depuis quelques jours le script ne fonctionne plus.
    En regardant rapidement j’ai l’impression que ça vient du “/full” qui poserait problème.
    As-tu rencontré ce souci ?

    Merci

  3. La version /full ne fonctionne plus depuis la nouvelle api v3 de google.

    pour utiliser la version basic il faut préciser false sur le deuxième paramètre:

    new GoogleAgenda(“https://www.google.com/calendar/…/basic”, false);

    l’appel fonctionne de nouveau par contre la version basic permet uniquement de récupéré le titre de l’événement du coup on ne peux plus tester sur les dates de l’évenement.

    J’ai modifier l’appel pour requêter directement les event avec l’heure.

    ‘startmin’ => gmdate(“Y-m-dTH:i:sZ”, time()),

    ‘startmax’ => gmdate(“Y-m-dTH:i:sZ”, time() + (1 * 60 * 60) + 60), //Ajout de 1h + 1 minute

    Après je récupère le premier résultat (température actuelle) et le dernier (pour la température de la prochaine heure)

  4. Merci pour ta réponse, j’ai pu résoudre le problème grâce à tes indications.

  5. Salut a tous

    Y-a t’il moyen d’avoir un script qui pourrais s’intégrer a la Box maintenant que la Box nous en donne l’occasion ?

    je suis intéressé pour récupéré les agenda de la famille en direct sur la box

    merci

  6. Bonjour,

    Google vient de supprimer les xml des agendas.
    Une solution existe-t-elle ? Avec le lien HTML peut-être ?

    Merci

Laisser un commentaire

Maison et Domotique
Logo
Register New Account
Enregistrez vous, et stockez vos articles préférés sur votre compte pour les retrouver n'importe où, n'importe quand !
Compare items
  • Casques Audio (0)
  • Sondes de Piscine Connectées (0)
  • Smartphones (0)
Compare