language
keyboard_arrow_up
language

Description

Ce plugin permet récupérer des calendrier distants(Apple,google,Nextcloud,Caldav..) ou locaux. Possibilité d’interagir et de lancer des actions selon l’évènement.

Configuration du plugin

Après le téléchargement du plugin, il vous suffit de l’activer et de le configurer.

IMPORTANT

CE PLUGIN NE PERMET PAS DE MODIFIER OU EDITER UN CALENDRIER DISTANT

En mode Debug le plugin est très verbeux, il est recommandé d’utiliser ce mode seulement si vous devez diagnostiquer un problème particulier. Il n’est pas recommandé de laisser tourner le plugin en Debug en permanence, si on utilise une SD-Card. Une fois le debug terminé, il ne faut pas oublier de retourner sur un niveau moins élevé comme le niveau Error qui ne remonte que d’éventuelles erreurs.

NOTE

Le plugin permet de : -Récupérer un calendrier via url (Apple, google,Nextcloud,synology,Caldav) et d’interagir en créant des événements -Récupérer un calendrier ics en local et l’intégrer à jeedom -De créer des événements liés à un calendrier avec le même nom et de créer des actions au début ou à la fin de l’événement. Donc en créant un événement sur votre calendrier ios ou google cela va pouvoir lancer des actions dans Jeedom -D’intégrer la Timeline officielle dans un calendrier. -D’avoir un widget sur le dashboard paramétrable.

configuration

?title? : retourne le titre de l’événement

?hour? : retourne l’heure de début de l’événement

Il faut configurer les champs pour le retour des informations avec les commandes “today” et “tomorrow” d’un calendrier. (Commande à utiliser ensuite via TTS , notification…). Mettre ?title? pour le titre de l’événement et ?hour? pour l’heure .

Une fois activer aller dans plugins/organisation/ Calendrier Ics

ics1

Cliquer sur le “+”

ics1

Vous pourrez alors ajouter un calendrier, un événement,la timeline ou un widget( une sorte de virtuel)

Les calendriers (sauf timeline)

Choisir le type de calendrier , entrer les paramètres et enregistrer. Vous pouvez ensuite configurer les calendriers.

ics3

  • couleur : La couleur des événements dans l’agenda

  • Fériés: Si un événement existe dans le calendrier le jour sera considéré comme férié( voir la doc sur les commandes)

  • Widget: Le nombre de jours sur le widget

  • Jours: Le nombre de jours à sauvegarder


Vous pouvez ensuite naviguer via les onglets

ics4


Dans l’onglet agenda, votre calendrier apparait.

ics5


NOTE

En cliquant(1 fois) sur un événement d’un calendrier, une fenêtre va s’ouvrir et vous pourrez définir des actions en début et/ou fin d’évènement.

ics6

Dans l’onglet commandes , les commandes de votre calendrier apparaissent. ( Lire par la suite)

La timeline

ics7

  • couleur : La couleur des événements dans l’agenda selon le type (Commande info ou action,scénario)
  • Dossier : Le dossier tel que configurer dans la timeline de jeedom



Les évènements

NOTE

Tout l’intérêt de ce plugin réside dans la gestion des événements.


IMPORTANT

Le plugin est unidirectionnel et récupère seulement les événements d’un calendrier (IOs, Google,Nextcloud,Caldav….). Aucune modification ne peut être effectuée


TIP

L’avantage dans ce cas est de nommer le calendrier avec un mot clé (anniversaire , rdv , etc… par exemple) . Et de pouvoir être averti si cet événement a lieu aujourd’hui ou demain par exemple ( Voir les commandes par la suite)

ics9

  • Calendrier: Permet de choisir le calendrier pour lequel l’événement est actif

  • Variable: Crée une variable si remplie. Utilisable ensuite dans les scénarios , les actions.

  • Exceptés Fériés : SI coché, il faut choisir un calendrier défini comme férié ( voir infos sur les calendriers) . Le événements ne se déclencheront pas dans ce cas


Les Widgets

Info

Les widgets sont des équipements virtuels qui permettent de rassembler les informations de différents calendriers (Hors Timeline)

ics7

  • Il faut juste sélectionner les calendriers que vous voulez ajoutez au widget

IMPORTANT

Pour optimiser l’affichage , les widgets affichent seulement les événements sauvegardés du calendier

Affichage

Note

ici le rendu sur le dashboard,design. Vue mobile ok

widgetDash

Les commandes

Calendriers

ics11

  • Last Event: Permet de récupérer le dernier événement d’un calendrier qui a déclenché les actions

  • Is holiday today (Pour un calendrier défini comme férié) : Si le jour en cours est férié. Retourne 1 si jour férié

  • Is holiday tomorrow (Pour un calendrier défini comme férié) : retourne 1 si le lendemain est férié

  • Today : Récupère tous les événements de la journée ( TTS , mail..)

  • Tomorrow : Récupère tous les événements du lendemain ( TTS , mail..)

  • Next : Le prochain événement à venir

  • Event Today : retourne 1 si événement le jour même, sinon 0

  • Event Tomorrow : retourne 1 si présence d’événement le lendemain , sinon 0

  • heure : retourne l’heure du prochain événement

  • titre : retourne le titre du prochain événement

  • date : retourne la date du prochain événement

  • togo : retourne 1 si événement encore le jour même à venir, sinon 0

Evènements

ics12

  • Today : Retourne 1, Si l’événement a lieu le jour même.

  • Tomorrow : Retourne 1, Si l’événement a lieu le lendemain.

  • Description : Retourne la description de l’évènement en cours si elle existe.

  • Description(Next) : Retourne la description du prochain évènement si elle existe.

  • heure : retourne l’heure de la prochaine occurence si existe.

  • titre : retourne le titre de la prochaine occurence si existe.

  • date : retourne la date de la prochaine occurence si existe.

  • Localisation : Retourne la localisation de l’évènement si elle existe.

  • Now : Retourne 1 si l’évènement est en cours sinon 0.

  • Next : Retourne le timestamp de l’évènement s’il est à venir ou 0 (Défini selon le nombres de jours sauvegardés).

Les actions

Pour les évènements , la navigation diffère avec l’onglet Configuration où vous pourrez définir les actions que vous souhaitez lancer au début,à la fin de l’événement.Mais aussi en différé.

ics10

NOTE

Dans l’exemple ci-dessus , les actions seront lancées 6 jours 4 heures et 10 minutes avant le début de l’évènement

ATTENTION : Le nombre de jours sauvegardés du calendrier associé à l’évènement doit être supérieur à ce temps

Tips

Calendrier Ios

IMPORTANT

Pour les calendrier Ios (Apple) il faut passer le calendrier en public pour pouvoir y avoir accés

Pour configurer le calendrier Ios, aller sur icloud.com et procéder ainsi


ics13

  • Copier ensuite le lien et remplacer webcal par htttps

Calendrier Google

IMPORTANT

Pour les calendrier Google, possibilité d’utiliser le calendrier sans le rendre public

  • Aller sur Google calendar

  • A droite , lors du survol du nom du calendrier il y a 3 points verticaux , cliquer dessus


ics18

  • Puis Paramètres et partage

  • Puis plus bas copier le lien dans le champs “ Adresse privée au format Ical”

  • Ajouter ensuite le lien dans la configuration du plugin

Calendrier scolaire

Pour un calendrier de vacances scolaires françaises , vous pouvez utiliser le lien suivant en modifiant la lettre de votre académie ( Mis à jour en temps réel)

http://cache.media.education.gouv.fr/ics/Calendrier_Scolaire_Zone_B.ics

Vous pourrez ensuite utiliser ce calendrier comme jours fériés

Exemple calendrier Ligue 1

Une adresse pour créer un agenda des matchs des différents championnats de Ligue 1

https://fixtur.es/fr/ligue-1

Possible de télécharger les rencontres d’une équipe ou du championnat entièrement.

Pour utiliser les infos vous copier le lien du fichier ics dans la configuration du calendrier nommé “Ligue 1” par exemple.

https://ics.fixtur.es/v2/league/ligue-1.ics

Pour comprendre le fonctionnement des événements:

Je ne veux pas rater les matchs de Dijon par exemple donc je crée un événement nommé “dijon” ( Le plugin ne tiens pas compte de la casse) que j’associe au calendrier “Ligue 1”.

Pour récupérer l’entier de l’intitulé dans la configuration des actions de l’événement je vais utiliser la commande “Last Event” du calendrier “Ligue 1”

ics14


Dans le message à l’heure du match le 13 janvier 2018 cela renverra Dijon FCO - FC Metz

Pour savoir si un match de dijon a lieu le lendemain ou le jour même , je vais créer un scénario qui se lance à 10h par exemple

ics15

On peut aussi mettre en déclencheur les différentes commandes pour les utiliser dans les scénarios.

Utilisation des variables

Je crée un événement nommé “Anniversaire” pour le calendrier “Caldav”. Un événement “Anniversaire de Paul” existe dans ce calendrier.

Je vais créer une variable “anniversaire” pour l’événement “Anniversaire” et enregistrer.

ics16

Ensuite dans les actions de début d’événement je donne comme valeur à la variable le nom de l’événement en utilsation la commande “Last event” du calendrier “Caldav” . Mais possible aussi de donner la valeur de la description de l’événement.

ics17

Ensuite dans un scénario , vous pouvez récupérer cette valeur de plusieurs façons:

  • En mettant la variable comme déclencheur , comme cela vous serez informé.

  • En programmant un scénario qui retourne la variable via une interaction.

Scénario utilisant les informations des calendriers

On utilise donc les commandes des calendriers et on définit des actions selon l’heure du prochain événement , le titre , etc…

scenario1

Déclencheur : On peut utiliser la commande “Next event” du calendrier qui se lancera lors de la mise à jour du prochain événement.

Premier bloc if : #[Plugins][Famille][A venir]# == 1 vérifie que l’événement à lieu le jour même du lancement du scénario

Bloc A : #[Plugins][Famille][Heure]# , retourne l’heure de l’événement à venir . On peut utiliser la fonction time_op(#[Plugins][Famille][Heure]#,+20) par exemple

Deuxième bloc if : #[Plugins][Famille][Titre]# == “Boulot Zyg0” vérifie que le titre de l’évènement et si ok lance les actions

NOTE

C’est un exemple et c’est paramétrables à souhait

faire de même avec un Scénario utilisant les informations des événements en mettant la variable de l’événement en déclencheur par exemple.

Support

IMPORTANT

En cas de problèmes , 2 solutions:

  • Ouverture d’un ticket via Jeedom

  • Ce post Via community =>

  • Je ne répondrai sur aucun autre post sur community car le système de tag ne fonctionne pas.