Crash du démon suite à mise à jour 2023-11-17 12:18:43

Bonjour,
Je viens de faire la MAJ vers la version 2023-11-17 12:18:43 du plugin et j’ai l’erreur suivante en boucle liée au topic domutils/Limours91/vigilance (domutils/Limours91/lune se termine bien) :

2023-11-19 00:49:09.359  Unable to run => See errors below
2023-11-19 00:49:09.359  TypeError: Cannot read properties of undefined (reading 'end_time')
at InfosVille.getMeteoVigilance (/var/www/html/plugins/mqttDomutils/resources/node_modules/mqtt4frenchtools/lib/infoville.js:327:59)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async main (/var/www/html/plugins/mqttDomutils/resources/node_modules/mqtt4frenchtools/index.js:95:11)

Pour contourner le problème j’ai modifié le fichier /var/www/html/plugins/mqttDomutils/resources/node_modules/mqtt4frenchtools/index.js en commentant les lignes 327 à 341 :

        } else {
          // On teste période 2
//          if (now < new Date(phenomenon.timelaps_items[1].end_time).getTime()) {
//            result[viginom[phenomenon.phenomenon_id]] = couleur[phenomenon.timelaps_items[1].color_id]
//            result[viginom[phenomenon.phenomenon_id] + 'D'] = Math.floor(new Date(phenomenon.timelaps_items[1].begin_time).getTime() / 1000)
//            result[viginom[phenomenon.phenomenon_id] + 'F'] = Math.floor(new Date(phenomenon.timelaps_items[1].end_time).getTime() / 1000)
//            // Troisième niveau du jour
//            if (timelength > 2) {
//              result[viginom[phenomenon.phenomenon_id] + '1'] = couleur[phenomenon.timelaps_items[2].color_id]
//              result[viginom[phenomenon.phenomenon_id] + '1D'] = Math.floor(new Date(phenomenon.timelaps_items[2].begin_time).getTime() / 1000)
//              result[viginom[phenomenon.phenomenon_id] + '1F'] = Math.floor(new Date(phenomenon.timelaps_items[2].end_time).getTime() / 1000)
//            }
//          } else {
//            result[viginom[phenomenon.phenomenon_id]] = couleur[phenomenon.timelaps_items[2].color_id]
//            result[viginom[phenomenon.phenomenon_id] + 'D'] = Math.floor(new Date(phenomenon.timelaps_items[2].begin_time).getTime() / 1000)
//            result[viginom[phenomenon.phenomenon_id] + 'F'] = Math.floor(new Date(phenomenon.timelaps_items[2].end_time).getTime() / 1000)
//          }
        }

Est-ce que je suis seul à avoir ce souci ?

Pour un contexte complet, voici les logs du lancement du démon jusqu’au crash (je ne considère pas ma ville comme une information sensible) :

2023-11-19 00:49:08.719   Starting French Tools
2023-11-19 00:49:08.762   Connected to MQTT broker [mqtt://127.0.0.1:1883]
2023-11-19 00:49:08.764  Publish frame to topic [domutils/global/saints]
2023-11-19 00:49:08.764  {
saintj: 'Tanguy',
saintj1: 'Edmond',
saintsj: 'Saint Abdias, Saint Azas, Saint Barlaam, Saint Buzeu, Sainte Ermemburge, Saint Jacques, solitaire, Saint Patrocle, Saint Tanguy et Saint Théodemir.',
saintsj1: 'Saint Bénigne, évêque, Saint Bernier, Saint Edmond, Saint Félix de Valois, Sainte Malque, Sainte Mame, Sainte Messence, Saint Octave, Sainte Octavie, Saint Ouarlux, Saint Soluteur et Sainte Tentide.'
}
2023-11-19 00:49:08.766  Publish frame to topic [domutils/global/annee]
2023-11-19 00:49:08.766  {
anNbjour: 365,
anNumjour: 323,
dstDate: '31/03/2024',
dstDiff: 133,
anNumsem: 46
}
2023-11-19 00:49:08.967  Publish frame to topic [domutils/global/edftempo]
2023-11-19 00:49:08.967  {
tempoCoulj: 'TEMPO_BLEU',
tempoCoulj1: 'NON_DEFINI',
tempoBleu: 221,
tempoBlanc: 43,
tempoRouge: 22,
tempoDeb: '01/09/2023',
tempoFin: '31/08/2024'
}
2023-11-19 00:49:09.104   Nouvelle ville: Limours - Departement: 91 - Zone: C
2023-11-19 00:49:09.105   Les données auront comme topic principal: 'domutils/Limours91'
2023-11-19 00:49:09.207  Publish frame to topic [domutils/Limours91/infos]
2023-11-19 00:49:09.207  {
nom: 'Limours',
insee: '91338',
deptnum: '91',
deptnom: 'Essonne',
longitude: 2.0823,
latitude: 48.6463,
zonevacances: 'C'
}
2023-11-19 00:49:09.209  Publish frame to topic [domutils/Limours91/ferie]
2023-11-19 00:49:09.210  {
ferCejour: 0,
ferNom: '',
ferProchaindate: '25/12',
ferProchainnom: 'Jour de Noël',
ferProchainjour: 36
}
2023-11-19 00:49:09.211  Publish frame to topic [domutils/Limours91/vacances]
2023-11-19 00:49:09.211  {
vacCejour: 0,
vacNom: '',
vacFin: '',
vacProchaindate: '23/12',
vacProchainom: 'Vacances de Noël',
vacProchainjour: 33
}
2023-11-19 00:49:09.214  Publish frame to topic [domutils/Limours91/soleil]
2023-11-19 00:49:09.215  {
soleilLever: '8:06',
soleilZenith: '12:38',
soleilCoucher: '17:10',
soleilElevation: '-60.50',
soleilElevzenith: '21.99',
soleilPosv: '-15.00',
soleilPosh: '5.00',
soleilDuree: '9:03',
soleilDiff: '-3m36s'
}
2023-11-19 00:49:09.219  Publish frame to topic [domutils/Limours91/lune]
2023-11-19 00:49:09.219  {
luneLever: '13:55',
luneCoucher: '23:04',
luneElevation: '-27.43',
luneToujours: 0,
luneAbsente: 0,
lunePhase: 'Premier quartier'
}
2023-11-19 00:49:09.359  Unable to run => See errors below
2023-11-19 00:49:09.359  TypeError: Cannot read properties of undefined (reading 'end_time')
at InfosVille.getMeteoVigilance (/var/www/html/plugins/mqttDomutils/resources/node_modules/mqtt4frenchtools/lib/infoville.js:327:59)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async main (/var/www/html/plugins/mqttDomutils/resources/node_modules/mqtt4frenchtools/index.js:95:11)

@wocha-fr je ne sais pas si c’est toi l’auteur du plugin, mais si c’est bien toi est-ce que ça te parle ?

Bonjour,
Je suis au courant depuis 3 jours, j’ai fait des modifications dans la librairie pour corriger le problème.
Problème vient de la vigilance météo. Le traitement des données à minuit et quand on interroge l’API lors d’une mise a jour chez MF.
J’ai une bêta (dispo sur le market) qui tourne et qui semble corriger le problème.

Et désolé de ma réponse tardive, je n’ai pas reçu de notifications pour ton message d’il y à 3 jours.

Pas de souci :slight_smile:

Je viens de mettre à jour et effectivement ça marche.
Par contre j’ai l’impression qu’on a perdu la vigilance canicule (c’était le cas avec la dernière mise à jour, mais je pensais que ça pouvait être un effet de bord de ma modif) :

Voici les logs :

2023-11-22 20:23:04.557  Publish frame to topic [domutils/Limours91/vigilance]
2023-11-22 20:23:04.557  {
vigiVent: 'Vert',
vigiVentD: 1700665200,
vigiVentF: 1700780400,
vigiCrue: 'Vert',
vigiCrueD: 1700665200,
vigiCrueF: 1700780400,
vigiOrage: 'Vert',
vigiOrageD: 1700665200,
vigiOrageF: 1700780400,
vigiPluie: 'Vert',
vigiPluieD: 1700665200,
vigiPluieF: 1700780400,
vigiNeige: 'Vert',
vigiNeigeD: 1700665200,
vigiNeigeF: 1700780400,
vigiFroid: 'Vert',
vigiFroidD: 1700665200,
vigiFroidF: 1700780400,
vigiVent1: '',
vigiVent1D: '',
vigiVent1F: '',
vigiVent2: '',
vigiVent2D: '',
vigiVent2F: '',
vigiCrue1: '',
vigiCrue1D: '',
vigiCrue1F: '',
vigiOrage1: '',
vigiOrage1D: '',
vigiOrage1F: '',
vigiOrage2: '',
vigiOrage2D: '',
vigiOrage2F: '',
vigiPluie1: '',
vigiPluie1D: '',
vigiPluie1F: '',
vigiPluie2: '',
vigiPluie2D: '',
vigiPluie2F: '',
vigiNeige1: '',
vigiNeige1D: '',
vigiNeige1F: '',
vigiNeige2: '',
vigiNeige2D: '',
vigiNeige2F: '',
vigiFroid1: '',
vigiFroid1D: '',
vigiFroid1F: '',
vigiFroid2: '',
vigiFroid2D: '',
vigiFroid2F: ''
}

Bonsoir,
C’est tout a fait normal, météo France ne la publie pas en hiver.
La donnée reviendras en avril ou mai de mémoire.

Top, merci ! :+1:

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.