NEWS
Script geht zeitweise auf Pause
-
@AlCalzone sagte in Script geht zeitweise auf Pause:
Dann hat eine der Stationen gerade keine Preisinformation (Zeile 52/53)
Füge in Zeile 41 folgendes ein:Danke
Werde es beobachten.
-
@Negalein Hab nochmal bearbeitet, bitte beachten
-
@AlCalzone sagte in Script geht zeitweise auf Pause:
Hab nochmal bearbeitet, bitte beachten
Danke
Also
if (gasStation[index].prices.length < 1) continue;
wieder raus
und nach Zeile 18gasStation = gasStation.filter(g => g.prices.length > 0);
rein.
Sieht dann so aus?
var gasStation = JSON.parse(obj.state.val); gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;
-
@Negalein Jup! Allerdings bitte selbst testen, hab ich von unterwegs getippselt.
-
@AlCalzone sagte in Script geht zeitweise auf Pause:
Allerdings bitte selbst testen, hab ich von unterwegs getippselt.
werd es mal ein paar Tage beobachten und mich wieder melden.
Danke erstmal!
-
@AlCalzone sagte in Script geht zeitweise auf Pause:
Allerdings bitte selbst testen, hab ich von unterwegs getippselt.
kurze Rückmeldung!
Bis jetzt ist das Script einwandfrei durchgelaufen!
Danke nochmals
-
gestern ist das Script wieder in Pause gegangen.
Diesmal mit einem anderen Fehler (filter is not a function).
Das ganze ist von 03:26 bis 06:54 (hab nicht alles angehänt, da immer die gleiche Meldung) aufgetreten.Kann man das irgendwie beheben? Oder liegt es an der zu parsenden Seite?
Falls es nicht zu beheben/umgehen ist, gibt es eine Möglichkeit ein Script zu überwachen, damit ich zumindest eine Benachrichtigung auf Telegram/Alexa bekomme?
Danke dir
-
@Negalein sagte in Script geht zeitweise auf Pause:
gestern ist das Script wieder in Pause gegangen.
Jupp, hatte ich Heute auch.
-
-
@ticaki sagte in Script geht zeitweise auf Pause:
Hoffe das hilft.
Danke
Das wird als eigenes Script angelegt?
-
Ja. Weiß nur nicht wie das Trennzeichen für Unterordner aussieht.
EDIT: must du alle x Zeiteinheiten per Cron ausführen lassen.
var gasStation = JSON.parse(obj.state.val); if (gasStation.length === 0) return; gasStation = gasStation.filter(g => g.prices.length > 0);
sieht das in deinem Script so aus?
-
@ticaki sagte in Script geht zeitweise auf Pause:
sieht das in deinem Script so aus?
So schaut das Script aus
must du alle x Zeiteinheiten per Cron ausführen lassen.
Das wird vom Parser geregelt. Der fragt die Adresse alle 10 Sek. ab und das Script reagiert darauf.
-
@Negalein
Dein letzter Fehler sieht so aus als wenn der Parser keine Daten geliefert hat und deshalb Zeile 18 gescheitert istVersuche bitte mal folgendes: 2 Zeilen vertauschen und gasStation auf array/object prüfen.
var gasStation = JSON.parse(obj.state.val); if (typeof gasStation != 'object' || gasStation.length === 0) return; gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;
EDIT: ups
-
@ticaki sagte in Script geht zeitweise auf Pause:
Versuche bitte mal folgendes: 2 Zeilen vertauschen und gasStation auf array/object prüfen.
Danke
Habs eingefügt/vertauscht und werde es die nächsten Tage beobachten. -
@Negalein
hab editiert bitte beachten -
@ticaki sagte in Script geht zeitweise auf Pause:
hab editiert bitte beachten
Also
var gasStation = JSON.parse(obj.state.val); gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;
gegen
var gasStation = JSON.parse(obj.state.val); if (typeof gasStation != 'object' || gasStation.length === 0) return; gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;
tauschen
-
@Negalein
Jup, habs nochmal verbessert. Mache zwar viel mit Arrays, mußte aber bis dato noch nicht prüfen, ob es auch eines istvar gasStation = JSON.parse(obj.state.val); if (!Array.isArray(gasStation) || gasStation.length === 0) return; gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;
-
-
@Negalein sagte in Script geht zeitweise auf Pause:
@ticaki sagte in Script geht zeitweise auf Pause:
habs nochmal verbessert
Thx
Kann man das Skript jetzt oben benutzen? Ist das das aktuelle.
-
@sigi234 sagte in Script geht zeitweise auf Pause:
Kann man das Skript jetzt oben benutzen? Ist das das aktuelle.
Ja, diese 4 Zeilen
var gasStation = JSON.parse(obj.state.val); if (!Array.isArray(gasStation) || gasStation.length === 0) return; gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;
statt diesen nehmen
var gasStation = JSON.parse(obj.state.val); gasStation = gasStation.filter(g => g.prices.length > 0); if (gasStation.length === 0) return;