Pb calendrier ICS O365

Bonjour
Mon calendrier ICS remontait bien dans jeedom depuis très longtemp.
ce matin le widget affiche un truc bizarre:
image

Alors que j’ai bien le même genre de rdv qui marchait avant.
J’ai fait un refresh manuel, pas mieux. j’ai créé un rdv test, pas mieux. d’ailleurs ce test apparait bien dans le ICS:

Vous avez une idée ?

ah oui j’ai rien dans le log

Personne n’a d’idée ?

Salut,

Chez moi le plugin fonctionne toujours sans pb.

Il est lourd le fichier ics ?

même pas, 10k : lien ICS

Je viens de tester ton ICS sur mon install, chez moi tout semble fonctionner correctement.
C’est bien ce résultat qui est attendu ?

Tu peux faire un screen de la santé de ton jeedom ?

tiens, c’est rigolo, mais oui c’est bien le résultat attendu.

Je suis en bonne santé:

Je vais tenter une suppression/ajout du plugin. Merci

Bonjour,

J’obtiens:
image
Jeedom 4.4.19 Debian 11

Debian 12 sur un plugin qui n’a pas été mis à jour il y a très longtemps, est ce que ça fonctionnait bien avant sous Deb12 déja ?

Sinon ça laisse penser que le plugin n’arrive pas à télécharger correctement l’ICS sans pour autant bien catcher ça dans le log.

Tu as esssayé de faire un curl du fichier connecté en SSH sur la box pour voir si c’est pas un pb de résolution, réseau … ?

Le CURL est OK

Mon debian est en 12 depuis longtemps et çà marchait.

Je vais essayer sur un jeedom en 11 que j’ai aussi.

En 4.5, debian 12, plugin stable ou beta résultat identique à mon test en 4.4

Pour obtenir votre résultat, il faut que je donne un nom de fichier non existant:
image
image
Il y a juste un warning dans le log http.error:

PHP Warning:  file(/var/www/html/plugins/dayinfo/reachcalendar2.ics): Failed to open stream: No such file or directory 

Déja ça ne semble pas venir du fichier lui même vu que chez nous c’est ok.

J’aurais fait le test en téléchargeant l’ics et en le stockant localement pour voir si le phénomène constaté est le même.

HS même sur un debian 11 (en 4.4.19 aussi)

J’ai uploadé mon ICS et avec un chemin local c’est ok:

image

image

si je remets mon URL c’est de nouveau HS. sachant que le curl est ok, je ne comprends pas trop.

Le plugin n’utilise pas curl pour récupérer le fichier mais file sans l’argument context.

Et aucune erreur relative à ce fichier dans les logs http.error ou cron_execution ?

Hum, la pour essayer de comprendre je tenterais bien un tcpdump pendant la récupération des data …

non

j’ai fait vite fait un fichier PHP:

<?php
// Lit une page web dans un tableau.
$lines = file('https://outlook.office365.com/owa/calendar/2e46c2e41b6145c8af6c99a3d33a94e3@gouraud.cc/3df2c8ceaf986101/S-1-8-1049094478-848012619-1489039938-1556272521/reachcalendar.ics
');
echo "Line debut";
echo $lines;
foreach ($lines as $line_num => $line) {
    echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}
echo "Line fin";
?>

bah on voit que le fichier n’est pas récupéré:

Donc surement une modif coté outlook.office365.
Il faut voir dans leur doc comment récupérer un fichier.
Il y a peut-être un contexte à créer pour la fonction php file()

Si je met dans le plugin votre https://… j’ai bien une ligne dans http.error

PHP Warning:  file(https://...@gouraud.cc/3df2c8ceaf986101/S-1-8-1049094478-848012619-1489039938-1556272521/reachcalendar.ics): Failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request\r\n in /var/www/html/plugins/dayinfo/core/php/class.iCalReader.php on line 59

Peut être çà peut arriver, ce qui est étrange c’est que le contenu est OK, le CURL est OK mais pas le files().

Du coup je maintiens ma proposition précédente :wink:

Je ne sais pas faire, trop compliqué pour moi.
j’ai fait un équiepement script qui me récupère le ICS en curl et fait pointer Dayinfo sur ce fichier en local. C’est une rustine, mais çà foncitonne. Je ne sais pas faire mieux.