Gladys 4 - Service CalDAV

Oui c’est normal, on a aucune action associée. C’est peut être à réfléchir mais à la base l’objectif de la synchronisation des évènements du calendrier c’est de les associer à des scènes (en cours de développement il semblerai) on ne cherche pas à modifier nos évènements dans Gladys tu le fais depuis ton app mobile/service dédier.
Tu aurais des idées d’actions au clic sur un évènement ?

En fait, je me suis posé la question parce que quand on passe sur un événement avec la souris, le curseur se transforme en main comme sur un lien. Donc par réflexe je clique, mais il ne se passe rien.
Dans mon cas perso, il y a des jours où tout un tas de trucs sont notés dans le calendrier, ce qui fait que certains événements sont partiellement voire presque totalement cachés derrière d’autres, donc je pensais qu’a minima ça permettrait de faire passer celui sur lequel on clique au 1er rang, ou de l’afficher mieux.
Mais c’est sûr que si le but du calendrier n’est que de pouvoir planifier des scènes, je m’en éloigne. Dans mon esprit, l’affichage du calendrier sur un écran aurait pu me permettre d’enlever les emplois du temps collés au réfrigérateur :sweat_smile:

calendrier

2 Likes

Bonjour,

J’ai un calendrier partagé (d’un autre compte) dans mon compte Google mais ce dernier n’est pas récupéré dans la liste des calendriers disponibles. Par contre, pas de soucis avec le calendrier externe ‘Jours fériés’. Quelqu’un aurait-il ce cas de figure et une solution ? Je ne sais pas si le service ‘cal’ de Google le permet. Etant donné que ce dernier est déprécié, existe-t-il une autre solution pour se connecter a l’agenda Google?

D’avance merci,

Bonjour @Romuald_Pochet,

Pour info, on a discuté un peu partage de calendrier ici [Caldav] Configuration multicomptes mais c’est plus pour le partage en interne.
Pour ce qui est de ton problème, le protocole CalDAV étant assez complexe, tout n’est peut être pas encore parfaitement géré.
Je vais essayer de reproduire ton cas pour voir si un fix est possible. C’est bien un compte Google qui partage un calendrier avec un autre compte Google ? Lorsque tu cliques sur “Synchroniser” sur la page de configuration de l’intégration CalDAV, as tu une erreur ?

Bonjour,

Oui c’est bien un calendrier d’un autre compte partagé avec mon compte. Il se trouve dans ‘Autre agendas’ (comme les calendriers des jours fériés). Dans le service CalDav, la méthode ‘requestCalendars (const listCalendars = await xhr.send(req, homeUrl);)’ ne retourne pas ce calendrier.

Mais pas d’erreur.

Il semblerait que Google n’active pas par défaut la synchronisation des calendriers partagés. Peux tu te rendre ici Google calendar syncselect et cocher le calendrier que tu souhaites synchroniser s’il te plait ? Une fois coché relance la synchronisation et dit nous si ça change quelque chose

Nickel, cela fonctionne maintenant

Un grand merci

1 Like

Bonjour, nouveau sur Gladys !
la premiere chose que j ai mis en place est la synchronisation de mon agenda Framagenda (nextcloud) sur gladys, et cela semble fonctionner.
mais la question que je me pose est : 'est qu il ne serait pas possible de mettre l agenda du jour sur le dashboard, faire une sorte de focus,todo… ?

Bonjour @Einstein8854 !

Ce n’est pas possible actuellement.

Si tu veux, on a une catégorie “Demande de fonctionnalités” sur le forum ou tu peux faire cette demande si tu voudrais que ça arrive dans une prochaine version de Gladys :slight_smile:

Bonjour tout le monde,

je rencontre un souci lors de la synchro de Google Calendar… Je n’ai pas trouvé si quelqu’un avait déjà rencontré ce problème.

Je suis arrivé à tout mettre en oeuvre grace au guide de la doc Gladys… mais lorsque je suis sur mon Dashboard Agenda, je ne vois qu’un seul de mes agendas affiché.
Pourtant ils sont a priori bien tous synchronisés et cochés :

image

Je n’ai que le planning Sophie qui est affiché sur mon interface :

J’ai le même soucis de mon côté seul un calendrier sur deux s’affiche

@guim31 Si tu lance la synchronisation et que tu regardes les logs en même temps, pas de soucis particulier ?

docker logs gladys -f 

C’est un calendrier qui vient d’où ?

@spenceur Même questions pour toi

Si justement j’en ai vu il me semble.
Je vais look asap

Update :

2022-02-25T10:45:33+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar xxxxxxxx
2022-02-25T10:45:33+0100 <info> calendar.syncUserCalendars.js:38 (CalDAVHandler.syncUserCalendars) CalDAV : Found 5 calendars.
2022-02-25T10:45:33+0100 <error> index.js:52 (Timeout.syncAllUsers [as _onTimeout]) UniqueConstraintError [SequelizeUniqueConstraintError]: Validation error
    at Query.formatError (/src/server/node_modules/sequelize/lib/dialects/sqlite/query.js:409:16)
    at Query._handleQueryResponse (/src/server/node_modules/sequelize/lib/dialects/sqlite/query.js:72:18)
    at Statement.afterExecute (/src/server/node_modules/sequelize/lib/dialects/sqlite/query.js:246:27) {
  errors: [
    ValidationErrorItem {
      message: 'selector must be unique',
      type: 'unique violation',
      path: 'selector',
      value: 'xxxxxxx',
      origin: 'DB',
      instance: [t_calendar],
      validatorKey: 'not_unique',
      validatorName: null,
      validatorArgs: []
    }
  ],
  fields: [ 'selector' ],
  parent: [Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: t_calendar.selector] {
    errno: 19,
    code: 'SQLITE_CONSTRAINT',
    sql: 'INSERT INTO `t_calendar` (`id`,`user_id`,`service_id`,`name`,`selector`,`external_id`,`description`,`sync`,`notify`,`ctag`,`sync_token`,`color`,`created_at`,`updated_at`) VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14);'
  },
  original: [Error: SQLITE_CONSTRAINT: UNIQUE constraint failed: t_calendar.selector] {
    errno: 19,
    code: 'SQLITE_CONSTRAINT',
    sql: 'INSERT INTO `t_calendar` (`id`,`user_id`,`service_id`,`name`,`selector`,`external_id`,`description`,`sync`,`notify`,`ctag`,`sync_token`,`color`,`created_at`,`updated_at`) VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14);'
  },
  sql: 'INSERT INTO `t_calendar` (`id`,`user_id`,`service_id`,`name`,`selector`,`external_id`,`description`,`sync`,`notify`,`ctag`,`sync_token`,`color`,`created_at`,`updated_at`) VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14);'
}
2022-02-25T10:45:50+0100 <info> scene.actions.js:267 (Object.user.check-presence) CheckUserPresence action: No devices of the user "jennifer" were seen in the last 10 minutes.
2022-02-25T10:45:50+0100 <info> scene.actions.js:270 (Object.user.check-presence) CheckUserPresence action: Set "jennifer" to left home of house "home"
2022-02-25T10:45:53+0100 <info> device.calculateAggregate.js:38 (DeviceManager.calculateAggregate) Calculating aggregates device feature state for interval hourly
2022-02-25T10:46:23+0100 <info> device.calculateAggregate.js:105 (ChildProcess.<anonymous>) device.calculateAggregate: Finishing processing for interval hourly 2022-02-25T10:46:23+0100 <info> device.calculateAggregate.js:38 (DeviceManager.calculateAggregate) Calculating aggregates device feature state for interval daily
2022-02-25T10:46:31+0100 <warn> handleMqttMessage.js:100 () Zigbee2mqtt device 0x00158d0002bfa014, feature linkquality not configured in Gladys.
2022-02-25T10:46:35+0100 <warn> handleMqttMessage.js:100 () Zigbee2mqtt device 0x00158d0002bfa014, feature linkquality not configured in Gladys.
2022-02-25T10:46:38+0100 <info> device.calculateAggregate.js:105 (ChildProcess.<anonymous>) device.calculateAggregate: Finishing processing for interval daily
2022-02-25T10:46:38+0100 <info> device.calculateAggregate.js:38 (DeviceManager.calculateAggregate) Calculating aggregates device feature state for interval monthly
2022-02-25T10:46:54+0100 <info> device.calculateAggregate.js:105 (ChildProcess.<anonymous>) device.calculateAggregate: Finishing processing for interval monthly
2022-02-25T10:49:33+0100 <warn> handleMqttMessage.js:100 () Zigbee2mqtt device 0x54ef4410000c1618, feature illuminance not configured in Gladys.
2022-02-25T10:49:33+0100 <warn> handleMqttMessage.js:100 () Zigbee2mqtt device 0x54ef4410000c1618, feature linkquality not configured in Gladys.
2022-02-25T10:50:50+0100 <info> scene.actions.js:267 (Object.user.check-presence) CheckUserPresence action: No devices of the user "jennifer" were seen in the last 10 minutes.
2022-02-25T10:50:50+0100 <info> scene.actions.js:270 (Object.user.check-presence) CheckUserPresence action: Set "jennifer" to left home of house "home"
2022-02-25T10:51:00+0100 <info> scene.actions.js:267 (Object.user.check-presence) CheckUserPresence action: No devices of the user "vincent" were seen in the last 15 minutes.
2022-02-25T10:51:00+0100 <info> scene.actions.js:270 (Object.user.check-presence) CheckUserPresence action: Set "vincent" to left home of house "home"
2022-02-25T10:51:56+0100 <warn> handleMqttMessage.js:104 (Zigbee2mqttManager.handleMqttMessage) Zigbee2mqtt device 0x00158d00058a4293 not configured in Gladys.
2022-02-25T10:53:55+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar My Calendar
2022-02-25T10:53:55+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Inbox
2022-02-25T10:53:55+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar 
Xxxxxxxxx
2022-02-25T10:53:55+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Fériés
2022-02-25T10:53:55+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar xxxxxxxxxx
2022-02-25T10:53:55+0100 <info> calendar.syncUserCalendars.js:38 (CalDAVHandler.syncUserCalendars) CalDAV : Found 5 calendars.

Problème d’unicité en base
:frowning:

Désolé des infos superflue dans les logs ^^

Pour ma part pas de bugs dans les logs (sauf si je regarde pas au bon endroit peut etre) :
La commande :

docker logs gladys

Me renvoit :

2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Guilhem
2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Agenda Sophie
2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar SPORT
2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Famille
2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Planning Romélie - Nounou
2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Jours fériés en France
2022-02-25T15:52:58+0100 <info> calendar.requests.js:52 () CalDAV : Found calendar Pro - Standard
2022-02-25T15:52:58+0100 <info> calendar.syncUserCalendars.js:38 (CalDAVHandler.syncUserCalendars) CalDAV : Found 7 calendars.

L’UI me dit ça :

ça aide beaucoup :slight_smile: C’est quoi les noms de tes calendriers ? Il y aurait pas 2 calendriers avec des noms très similaire par exemple ?

ça m’a l’air bon de ton côté :slight_smile:

Tu utilise quelle service de calendrier ? (quelle provider j’entend)

J’utilise Google Agenda

Ok! J’utilise le même et j’ai l’impression que parfois leur API n’envoie pas tous les évènements

Souvent, lors que je connecte Gladys, ça met plusieurs jours à venir, comme si leur backend “limitait” le nombre d’entrée que tu peux synchroniser.

ça fait combien de temps que tu as connecté ce calendrier ?

Tu l’avais connecté juste 1 fois où tu avais déconnecté/reconnecté depuis pour voir si ça résout ton problème ?

Ça fait 2 jours à peine, je n’avais jamais pris le temps de tout paramétrer (double facteur / mot de passe de l’application). Donc c’est très frais, je vais surveiller au fil des jours !

Hmmm j’ai honte mais effectivement j’avais bel et bien deux calendar qui portait le même nom sur synology, my bad
L’affichage des deux calendar sont ok

C’est pas de ta faute, c’est aussi un peu anormal que 2 calendriers avec le même nom ça bloque la synchronisation à ce point là :slight_smile:

C’est un point donc on est au courant, et j’avais commencé un développement pour permettre ce genre de chose mais c’est beaucoup de travail.

Côté Gladys, on pourrait peut-être ajouter un “2” au deuxième calendrier, mais bon après comment différencier les 2 calendriers ?

De manière générale, je sais pas si c’est très utile d’avoir 2 calendriers qui ont le même nom exactement (je me demande comment tu fais actuellement pour pas te tromper ^^)