Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

[Plugin Tiers][Sujet Principal] Plugin iCalendar

Pour échanger sur les plugins classés en catégorie "Organisation"
Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 14 févr. 2017, 12:08

bonjour à tous

Petit soucis ce matin, j'ai le plugin PRESENCE qui utilise ce PLUGIN pour gérer la présence ou non avec un événement TRAVAIL dans le calendrier.

Ce matin j'ai enlevé l’événement TRAVAIL, pour cause d'enfant malade, mais le plugin ne prend pas le changement et remonte toujours cet événement

Code : Tout sélectionner

[2017-02-14 12:06:04][DEBUG] : [CRON|365] cron().nb cmd=1
[2017-02-14 12:06:04][DEBUG] : [CRON|365|3401] execute(iCal-3401-J0) starting...
[2017-02-14 12:06:04][DEBUG] : [CRON|365|3401] execute() INFO cmd with defaultValue="", viewStyle="current", indicateur="0, periodeWorking="0", originalCmdId=""
[2017-02-14 12:06:04][INFO] : [CRON|365|3401|Travail] isEventForPeriode(): event in the periode
[2017-02-14 12:06:04][INFO] : [CRON|365|3401|Travail] execute(): added event.
[2017-02-14 12:06:04][DEBUG] : [CRON END]=====(0.051)
j'ai bien fait une demande de rechargement depuis l'équipement mais cela ne change rien

une idée ?
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

rafdulaf
Timide
Messages : 18
Inscription : 23 févr. 2016, 08:44

Re: [Sujet officiel] Plugin iCalendar

Message par rafdulaf » 14 févr. 2017, 18:23

oui j'ai remarqué aussi un problème avec les exceptions aux événements récurrents.
Perso, ça fonctionne, jusqu'au jour ou ça fonctionne plus :)
A savoir : j'ai un événement récurrent tous les jours et donc je fais souvent des exceptions dessus : cela fonctionne mais j'ai l'impression que quand il commence à y avoir trop d'exceptions sur cet événement, les exceptions ne sont plus prises en compte

EDIT: pour être exact j'ai un événément récurrent le matin et un l'apres midi. Aujourd'hui j'vais une exception sur les deux événements. Dans jeedom, seul le matin a tenu compte de l'exception

Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 14 févr. 2017, 18:36

Par 'exception' tu entends la suppression d'un événement dans un évènement répétitif ?

C'est vraiment galère ce problème

Si je clique sur la vignette, il ouvre bien le calendrier et aucun événement n'est présent pour la journée
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

rafdulaf
Timide
Messages : 18
Inscription : 23 févr. 2016, 08:44

Re: [Sujet officiel] Plugin iCalendar

Message par rafdulaf » 14 févr. 2017, 18:48

En l'occurrence dans google je modifie les heures de l'événement en choisissant "uniquement cet événement"

Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 15 févr. 2017, 12:12

rafdulaf a écrit :En l'occurrence dans google je modifie les heures de l'événement en choisissant "uniquement cet événement"
Oui et même chose lors de la suppression et c'est qui lui plairait pas ?

Qu'en pense le Dev ?
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

Philippe777
Timide
Messages : 39
Inscription : 17 nov. 2015, 14:53

Re: [Sujet officiel] Plugin iCalendar

Message par Philippe777 » 16 févr. 2017, 18:51

bonjour à tous,

bon, à force de chercher et de tester, je crois avoir vu le problème !
en utilisant l'utilitaire pour générer la commande à copier/coller dans le descriptif du calendrier Google, j'ai fait une confusion (ou erreur de compréhension :oops: ) : il faut écrire dans le champs TITRE (de la 1ere minute) le message que l'on veut envoyer, et non pas dans le champs MESSAGE (de la 1ere minute) :roll:

avant (ne fonctionne pas):
Image

après (fonctionne):
Image

Si ça peut aider d'autres utilisateurs... , ou faire ajouter des précisions dans la doc (merci abbarrau ;) )
Xpenology, DSM 5.2, Jeedom DIY, clé AEON Labs Z-stick S2, FGRM-222, FGR-222, FGS-222, FGMS-001, FGFS-101, FGBS-001, DSC19103, FGSD-002, FGFS-101, FGK-101
Xiaomi Gateway V2, détecteur de porte, bouton switch

Avatar de l’utilisateur
nickasimir
Actif
Messages : 693
Inscription : 06 août 2014, 19:35
Localisation : Montreuil, Idf

Re: [Sujet officiel] Plugin iCalendar

Message par nickasimir » 03 mars 2017, 12:35

Bonjour,

est-ce que Icalendar est compatible GAPPS PRO et gratuit ?
Et est-ce qu'il est possible de faire une synchro de certaine entrée ou rdv vers l'agenda Jeedom ?

MErci
Jeedom en DIY sur NUCI3| Mon Matos : Ici

caplam
Actif
Messages : 646
Inscription : 02 déc. 2014, 15:36

Re: [Sujet officiel] Plugin iCalendar

Message par caplam » 14 mars 2017, 09:12

Bonjour à tous,

ca fait longtemps que j'ai installé le plugin mais je commence seulement à l'utiliser.
J'ai lu la doc et ce sujet. Il est fort possible que je n'ai pas tout retenu.
Je vais principalement me servir du plugin pour gérer le chauffage.
J'ai bien compris que le plugin peut fonctionner suivant 2 modes. A priori le mode qui déclenche les scénarios et actions ne m'est pas accessible car je veux gérer des temps d'anticipation pour que ma consigne soit atteinte à l'heure programmée.
Il faut donc que je traite tout en dehors du plgin via des scenarios et virtuels.
Si j'ai bien compris il faut donc que teste la commande agenda.
Si je veux tester si un évènement est en cours c'est avec:

Code : Tout sélectionner

#[Maison][Home][google home]# matches "/A:reveil/"  
Les évènements passés sont préfixés d'un P. En revanche je ne vois pas comment traiter l'évènement suivant.
Vous avez une idée ?

edit: le top serait d'avoir un prefixe pour l'évènement suivant, S par exemple
Dans mon cas la valeur de la commande est quleque chose comme ça:

Code : Tout sélectionner

06:30;08:00;P;reveil;AAAAAAAAAAAAAAAAAAAA@google.com;;1489477242;||08:00;17:00;A;journée;BBBBBBBBBBBBBB@google.com;;1489476537
;||17:00;23:00;;soirée;CCCCCCCCCCCCCCCC@google.com;;1489477274;||23:00;23:59;;nuit;DDDDDDDDDDDDD@google.com;;1489477164;
il faudrait que je trouve avec des regex, que je ne maitrise pas du tout, comment extraire les times stamp de début et de fin et le titre de l'évènement qui suit celui avec le préfixe A.
Dit comme ça c'est simple mais ça fait 2h que je tourne en rond sur un site de test de regex.
Jeedom sur vm esxi stretch
Principaux plugins: eibd, homebridge, maxcube, icalendar

Ricardo
Timide
Messages : 227
Inscription : 14 mars 2015, 15:26

Re: [Sujet officiel] Plugin iCalendar

Message par Ricardo » 14 mars 2017, 18:46

Bonjour,

Voilà de mon coté comment je récupère les événements d'un calendrier :

Code : Tout sélectionner

$MaVariable="Test_Agenda";
$VarTempo="Var_Tempo";
//
// récupération des évenements sur l'Agenda de Test
$cmdEvent=cmd::byString('#[Principal][Agendas][Test]#');
$Evenement=$cmdEvent->execCmd();
// Recherche de la position de la chaine || si > 0 cela signifie qu'il y a plusieurs événements sur la journée
$pos = strpos($Evenement,'||');
//
if ($pos === false) {
  	 $Trame=explode(';', $Evenement);
  	 $scenario->setLog($Trame[0]); // Heure début
  	 $scenario->setLog($Trame[1]); // Heure fin
 	 $scenario->setLog($Trame[2]); // Etat
 	 $scenario->setLog($Trame[3]); // Evenement (Titre)
 	 $scenario->setLog($Trame[7]); // Lieu
     // On construit la chaine de caractère à envoyer sur le Lametric
     $scenario->setData($MaVariable,'Rendez-vous à' . ' ' . $Trame[0] . ' ' . $Trame[3] . ' ' . 'à' . ' ' . $Trame[7]);
     // Extraction de l'heure de début
     $heure=explode(':',$Trame[0]);
     $inter=intval(strval($heure[0])-6);
     // On programme le scénario de rappel toute les 30 minutes 6 heures avant l'évenement
     $MonScenar=scenario::byId(55);
     $MonScenar->setMode('schedule');
     $OnRecuperePlaninification=$MonScenar->getSchedule();
     $MonScenar->setSchedule('*/30' . ' ' . $inter.'-'.$heure[0] . ' ' . ' * * 1-6');
     // On active le scenario
     $isActive=1;
     $MonScenar->setIsActive($isActive);
     $MonScenar->save();
 } else {
	 $ary = explode('||',$Evenement);
	        foreach($ary as $items) {
	          $Trame = explode(';', $items);
	          $scenario->setLog($Trame[0]); // Heure début
			  $scenario->setLog($Trame[1]); // Heure fin
			  $scenario->setLog($Trame[2]); // Etat
			  $scenario->setLog($Trame[3]); // Evenement (Titre)
			  $scenario->setLog($Trame[7]); // Lieu
              // On construit la chaine de caractère à envoyer sur le Lametric
              $VarTempo.= ' ' . 'Rendez-vous à' . ' ' . $Trame[0] . ' ' . $Trame[3] . ' ' . 'à' . ' ' . $Trame[7];
              // Extraction de l'heure de début
  	          $heure=explode(':',$Trame[0]);
              $inter=intval(strval($heure[0])-6);
	     	}
            //
            $BonneValeur=str_replace('Var_Tempo ',"",$VarTempo);
            $scenario->setData($MaVariable,$BonneValeur);
            // On programme le scénario de rappel toute les 30 minutes 6 heures avant l'évenement
            $MonScenar=scenario::byId(55);
            $MonScenar->setMode('schedule');
            $OnRecuperePlaninification=$MonScenar->getSchedule();
            $MonScenar->setSchedule('*/1' . ' ' . $inter.'-'.$heure[0] . ' ' . ' * * 1-6');
  			// On active le scenario
  			$isActive=1;
            $MonScenar->setIsActive($isActive); 
            $MonScenar->save();          
}
En espérant t'avoir aiguillé avec mon bout de code qui n'est pas forcément élégant :shock:

Voilà, à toi de jouer maintenant

@+ ;)
HP T610 - Jeedom
56 modules Zwave - 32 modules Enocean - 3 modules Edisio - 7 modules Rfxcom - 40 modules Zigbee
Cam : 2 Dafang - 3 Foscam - 3 Wanscam
3 Broadlink - 7 Nuts
5 Amazon Echo - 4 Amazon Echo Dot
5 SqueezeBox - 4 Xiaomi Speaker

caplam
Actif
Messages : 646
Inscription : 02 déc. 2014, 15:36

Re: [Sujet officiel] Plugin iCalendar

Message par caplam » 14 mars 2017, 19:21

Merci je vais étudier ça. :D
Jeedom sur vm esxi stretch
Principaux plugins: eibd, homebridge, maxcube, icalendar

caplam
Actif
Messages : 646
Inscription : 02 déc. 2014, 15:36

Re: [Sujet officiel] Plugin iCalendar

Message par caplam » 15 mars 2017, 17:53

C'est un peu laborieux (je n'ai pas écrit de code depuis 20ans et jamais de php) mais ça avance.
J'ai réussi à écrire dans des variables de scénarios les timestamp de début et de fin de l'évènement actif ainsi que son titre. J'ai aussi pu récupérer dans des variables l'évènement (titre et timestamps) suivant celui qui est actif.
Il faut encore que je fasse des tests pour blinder ça.
Il faut aussi que je traite le cas où l'évènement actif est le dernier de la journée car il faut alors chercher le suivant dans le resultat de la commande agenda J+1.
D'ailleurs pouvez me confirmer que même si une plage horaire est à cheval sur 2 jours le plugin la scinde en deux et celle du jour courant se termine alors systématiquement à 23:59 ?
Jeedom sur vm esxi stretch
Principaux plugins: eibd, homebridge, maxcube, icalendar

LaFeuille
Timide
Messages : 38
Inscription : 22 mars 2017, 21:59

Re: [Sujet officiel] Plugin iCalendar

Message par LaFeuille » 22 mars 2017, 22:11

Bonjour à tous,

Je souhaiterai un petit coup de main car depuis plusieurs jours je n'arrive pas à régler le plugin présence avec icalendar.
Je m'explique, le calendrier renseigné correspond à mes horaires de travail, je souhaite que la maison passe en mode présent 1h30 avant l'heure de début de mon événement.
Comment pourrais-je procéder pour récupérer l'heure de début? Créer un scénario avec variable? un virtuel?

Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 23 mars 2017, 20:49

Bonsoir

J'utilise le plugin pour avoir le nom de l'événement en cours

Avec cette méthode est il quand même possible d'avoir la date de fin de l'événement afin de programmer une action ?

Merci
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

Avatar de l’utilisateur
fwehrle
Actif
Messages : 2824
Inscription : 01 juil. 2015, 11:03
Localisation : Strasbourg

Re: [Sujet officiel] Plugin iCalendar

Message par fwehrle » 23 mars 2017, 21:48

Je crois que tu peux déclencher un scénario au début et à la fin de chaque événement. Et tester dans ton scénario si c'est le début ou la fin.
Jeedom 3 sur Debian 9 en VM Proxmox 5 sur NUC Intel.
(Anciennement sur Docker sur Syno DS-415+ / MariaDB / DSM 6)
Teleinfo / RFXCom / Stick ZWave / IPX / Serveur Traccar / Blea

Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 25 mars 2017, 20:08

Merci pour la réponse mais j'ai besoin d'avoir la date de fin des le début afin de pouvoir lancer un scénario 4h avant la fin
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

Ricardo
Timide
Messages : 227
Inscription : 14 mars 2015, 15:26

Re: [Sujet officiel] Plugin iCalendar

Message par Ricardo » 26 mars 2017, 18:53

Hello,

Regarde l'exemple que j'ai donné plus haut, je planifie un scénario 6 heures avant le début de l'événement. Donc pas de soucis pour déclencher un scénario 4 heures avant la fin.

Code : Tout sélectionner

$Trame=explode(';', $Evenement);
      $scenario->setLog($Trame[0]); // Heure début
      $scenario->setLog($Trame[1]); // Heure fin
     $scenario->setLog($Trame[2]); // Etat
     $scenario->setLog($Trame[3]); // Evenement (Titre)
     $scenario->setLog($Trame[7]); // Lieu
     // On construit la chaine de caractère à envoyer sur le Lametric
     $scenario->setData($MaVariable,'Rendez-vous à' . ' ' . $Trame[0] . ' ' . $Trame[3] . ' ' . 'à' . ' ' . $Trame[7]);
     // Extraction de l'heure de début
     $heure=explode(':',$Trame[0]);
     $inter=intval(strval($heure[0])-6);
     // On programme le scénario de rappel toute les 30 minutes 6 heures avant l'évenement
     $MonScenar=scenario::byId(55);
     $MonScenar->setMode('schedule');
     $OnRecuperePlaninification=$MonScenar->getSchedule();
     $MonScenar->setSchedule('*/30' . ' ' . $inter.'-'.$heure[0] . ' ' . ' * * 1-6');
     // On active le scenario
     $isActive=1;
     $MonScenar->setIsActive($isActive);
     $MonScenar->save();
Bonne fin de week-end.

@+
HP T610 - Jeedom
56 modules Zwave - 32 modules Enocean - 3 modules Edisio - 7 modules Rfxcom - 40 modules Zigbee
Cam : 2 Dafang - 3 Foscam - 3 Wanscam
3 Broadlink - 7 Nuts
5 Amazon Echo - 4 Amazon Echo Dot
5 SqueezeBox - 4 Xiaomi Speaker

Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 27 mars 2017, 09:58

Ricardo a écrit :Hello,

Regarde l'exemple que j'ai donné plus haut, je planifie un scénario 6 heures avant le début de l'événement. Donc pas de soucis pour déclencher un scénario 4 heures avant la fin.

Code : Tout sélectionner

$Trame=explode(';', $Evenement);
      $scenario->setLog($Trame[0]); // Heure début
      $scenario->setLog($Trame[1]); // Heure fin
     $scenario->setLog($Trame[2]); // Etat
     $scenario->setLog($Trame[3]); // Evenement (Titre)
     $scenario->setLog($Trame[7]); // Lieu
     // On construit la chaine de caractère à envoyer sur le Lametric
     $scenario->setData($MaVariable,'Rendez-vous à' . ' ' . $Trame[0] . ' ' . $Trame[3] . ' ' . 'à' . ' ' . $Trame[7]);
     // Extraction de l'heure de début
     $heure=explode(':',$Trame[0]);
     $inter=intval(strval($heure[0])-6);
     // On programme le scénario de rappel toute les 30 minutes 6 heures avant l'évenement
     $MonScenar=scenario::byId(55);
     $MonScenar->setMode('schedule');
     $OnRecuperePlaninification=$MonScenar->getSchedule();
     $MonScenar->setSchedule('*/30' . ' ' . $inter.'-'.$heure[0] . ' ' . ' * * 1-6');
     // On active le scenario
     $isActive=1;
     $MonScenar->setIsActive($isActive);
     $MonScenar->save();
Bonne fin de week-end.

@+
Bonjour

Merci pour la réponse, j'avais un peu regardé ce script mais j'espérait avoir une solution plus simple, c'est dommage que le plugin ne remonte pas facilement ces informations.

je vais m'y repencher, sur le principe, il faut créer un script, en info/numérique en y copiant ce code ou cela se met directement dans un scénario ?

merci
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

Ricardo
Timide
Messages : 227
Inscription : 14 mars 2015, 15:26

Re: [Sujet officiel] Plugin iCalendar

Message par Ricardo » 27 mars 2017, 10:38

Bonjour,

Dans un scénario contenant un bloc "CODE" tu copies ce bout de code et tu l'arranges pour qu'il corresponde à ton besoin.

Attention à cette ligne de code : $MonScenar=scenario::byId(55) elle fait référence à l'ID du scénario que tu déclencheras 4 heures avant la date de fin, il faut que celui-ci soit déjà crée pour pouvoir le programmé en dynamique en fonction de ce que tu remonteras.

Pour résumé : Un scénario A déclenché suivant l'état de ton planning ( != "Aucun" ), et dans ce scénario A tu parcours les événements pour trouver la ou les dates de FIN et tu programmes un scénario B dynamiquement en fonction de celles-ci (4 heures avant)

Chez moi cela fonctionne bien, il m'affiche toutes les 30 minutes sur mon Lametric, pendant 6 heures avant le début de l'événement le titre du rendez-vous et l'heure.

Bonne journée.

@+
Dernière édition par Ricardo le 27 mars 2017, 10:45, édité 1 fois.
HP T610 - Jeedom
56 modules Zwave - 32 modules Enocean - 3 modules Edisio - 7 modules Rfxcom - 40 modules Zigbee
Cam : 2 Dafang - 3 Foscam - 3 Wanscam
3 Broadlink - 7 Nuts
5 Amazon Echo - 4 Amazon Echo Dot
5 SqueezeBox - 4 Xiaomi Speaker

Avatar de l’utilisateur
Antoinekl1
Actif
Messages : 3927
Inscription : 23 mai 2015, 08:14

Re: [Sujet officiel] Plugin iCalendar

Message par Antoinekl1 » 27 mars 2017, 10:41

parfait, merci @Ricardo, je regarde ca

Edit:

Alors un scenario de lancement qui se déclenche par le changement du calendrier avec le code

et un scenario dont l'ID est indiqué dans le scenario ci-dessus. Ce scénario est désactivé, il s'activera 6H avant le retour et se lancera toutes les 30mn.
si la condition est respectée il se désactive.

Pas besoin du supprimer la programmation ?
JEEDOM Smart Ultimate + 40 modules zwave
A vendre ; pack POWER jeedom - Jeedom Mini+ - Console Clazio sous Android 6

kiwihc16
Actif
Messages : 1866
Inscription : 08 févr. 2016, 12:40

Re: [Sujet officiel] Plugin iCalendar

Message par kiwihc16 » 28 mars 2017, 13:07

Bonjour à tous,
Je fais face à un problème plutôt critique. Cela fait deux fois que le répertoire /tmp/iCalendar (répertoire de cache) est plein, ce qui a pour effet de planter complètement Jeedom :mrgreen:
Mes observations à ce jour:
- j'ai 25 calendriers (serveur owncloud et autre). Je trouve donc 25 fichiers *.tmp.ics dans le repertoire cache
- J'ai la semaine d'activée donc je trouve jusqu'a 6 fichiers *.tmp.json par fichier tmp.ics
Quand les soucis se produisent je me retrouve avec des fichiers *.tmp.json en double, triple,... comme si les anciens n'avaient pas été effacés lors de la regénération.
Fichier tmp.json : iCal(id de la commande)(date - trois moins)(date+6 mois).tmp.json
Les "id de la commande" sont biens dans la base de données.
Lorsque je reboot jeedom le repertoire /tmp est recréé donc on repart à zero et le repertoire est propre.
J'ai mis les logs en mode debug et une alerte quand il y a trop de fichier dans le repertoire. Esperons que je parvienne à capturer la source du problème.
Si vous avez des idées, je suis preneur.


31/3/2017: les json sont générés tous les matins à 00h01min. J'en ai un nouveau tous les jour par commande. Exemple:
-rw-r--r-- 1 www-data www-data 4061 mars 29 00:01 iCal51400-1482966085-1506636085.tmp.json
-rw-r--r-- 1 www-data www-data 4329 mars 30 00:01 iCal51400-1483052487-1506722487.tmp.json
-rw-r--r-- 1 www-data www-data 4329 mars 31 00:01 iCal51400-1483138887-1506808887.tmp.json

Moteur de tache -> Cron Id 1 regenerate all *.json files:
php /var/www/html/core/class/../php/jeeCron.php cron_id=1

Si je lance 2 fois le cron 1 alors:
-rw-r--r-- 1 www-data www-data 2 mars 31 13:02 iCal4309-1483185755-1506855755.tmp.json
-rw-r--r-- 1 www-data www-data 2 mars 31 13:16 iCal4309-1483186573-1506856573.tmp.json

Le nom du fichier est conservé dans la base de donnée dans le champ configuration, par exemple:
{"originalCmdId":"2186","iCalendarUrl":"-","periodeWorking":"6","defaultValue":"","viewStyle":"1day_today","indicDebFin":"1","showHour":"1","showHour24H":"1","periodeView":"6","showLocation":"1","actionIsHistorized":"1","isGoogleCal":false,"icsCalendarName":"","jsonCacheFN":"iCal4035-1483194521-1506864521.tmp.json"}

2/4/2017: Je Pense avoir trouvé le bug.
Il manque juste le traitement d'un cas dans une série de if.
Dans la fonction getEventsInCalendar(), le " if (($_dS <= $_p['dStart'])&&($_p['dEnd']<=$_dE)) {" n'a pas de else.
Je propose un else:

Code : Tout sélectionner

else {
        if (!unlink(ICALENDAR_CACHE_PATH.$_fnInCache)) {
                  log::add('iCalendar', 'debug', '[' .$this->_whatLog.'|'. $this->eqLogic_id . '|' . $this->id . '] BEN cleanCacheFile(): ERROR: '.__('Echec lors de la suppression du fichier', __FILE__) . ': '. $_fnInCache);
        } else {
                  log::add('iCalendar',  'info', '[' .$this->_whatLog.'|'. $this->eqLogic_id . '|' . $this->id . '] BEN cleanCacheFile(): '.__('Fichier supprimé', __FILE__) . ': '. $_fnInCache);
        }
}
Résultats de la nuit positifs, pas de doublons dans /tmp/iCalendar ...
Dernière édition par kiwihc16 le 02 avr. 2017, 10:17, édité 7 fois.

Répondre

Revenir vers « [Catégorie] Organisation »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 5 invités