NEWS
[Javascript] für Warnungen von Lebensmittelwarnung
-
@mcu
Keine Eile. Ich kann warten, so eilig ist das nicht -
@martybr Schau mal , reicht das so?
Wenn da noch Design-Wünsche sind, bitte mitteilen. -
@mcu
Ich teste gerade. Die DPte werden unter javascript.0.VIS.Lebensmittewarnung angelegt.
Das Widget habe ich von Github geladen. Ich glaube, da muss ich noch war anpassen.
Den ersten Punkt verstehe ich nicht:<h3>{javascript.0.VIS.Lebensmittelwarnung.Nummer_0.Titel}</h3> Link zur Meldung: <a href="{javascript.0.VIS.Lebensmittelwarnung.Nummer_0.Link}" target="_blank"><i>Klick mich...</i></a><br />
-
-
Vielen Dank, das sieht ja klasse aus, hier dargestellt mit dem MinuVIS-Adapter:
-
@mcu
Ich hatte das falsche Script geladen. Nun klappt alles.
Vielen Dank -
Hallo
also das Script scheint soweit zu funktionieren, nur der Alarm bei Pushover geht nicht. Der adapter ist installiert und funktioniert auch, aber eine neue Lebensmittelwarnung löst keinen Alarm aus.
Ein Datenpunkt würde mir auch reichenGruß
Werner -
Telegram scheint auch nicht zu gehen
-
-
@ilovegym sagte in [Javascript] für Warnungen von Lebensmittelwarnung:
welche Benachrichtigung? Welche Version vom Script nutzt ihr denn?
Das von @MCU hat keine Benachrichtigungsfunktion, und das von @SBorg ist depricated, wie unten beschrieben.// **************************** // lebensmittelWarnung v1.0.3 // **************************** // Copyright ©MCU // v1.0.1 - Abfrage first >=0 // v1.0.2 - html hinzugefügt // v1.0.3 - Send Message to telegram, pushOver, alexa // xml2js in javascript-Instanz eintragen!!!! // Bild mit Link zum Artikel let foodJSONDP = '0_userdata.0.Lebensmittel.Warnung.json' let foodHTMLDP = '0_userdata.0.Lebensmittel.Warnung.html' let selectedCountryDP = '0_userdata.0.Lebensmittel.Warnung.country' let telegramUser = ''; // '' für alle let telegramInstance = '0'; let sendTelegram = true; // true -> telegram muss installiert sein let pushOverInstance = '0'; let sendPushOver = false; // true -> pushOver muss installiert sein let alexaEchoDevice = 'G070RR1382740311'; let alexaInstance = '0'; let sendAlexa = true; // true -> Alexa muss installiert sein let jarvisInstance = '0' let sendJarvisPopup = false; let newSendSet = false;
in denn datenpunkt steht was drin also die warnung aber es kommt keine telegram Nachricht
[ { "pubDate": "Mon, 2 Sep 2024 14:03:59 +0200", "pubDateTS": 1725278639000, "title": "Cashewkerne naturell, Ja!, 200 Gramm", "picture": "<a href=\"https://www.lebensmittelwarnung.de/___lebensmittelwarnung.de/Meldungen/2024/09_September/240902_02_SH_Cashewkerne/240902_02_SH_Cashewkerne.html\"><img src=\"https://www.lebensmittelwarnung.de/___lebensmittelwarnung.de/Meldungen/2024/09_September/240902_02_SH_Cashewkerne/240902_02_SH_Cashewkerne_Bild.jpg?__blob=normal&v=1\" style=\"max-width: 250px; width: auto; height: 100px; \" ></a>", "pictureSrc": "\"https://www.lebensmittelwarnung.de/___lebensmittelwarnung.de/Meldungen/2024/09_September/240902_02_SH_Cashewkerne/240902_02_SH_Cashewkerne_Bild.jpg?__blob=normal&v=1", "description": "Cashewkerne naturell, Ja!, 200 Gramm", "productDurability": "bis Ende Februar 2025", "packingUnit": "200 Gramm", "chargeNumber": "58824", "extDescription": "Cashewkerne naturell, Ja!, 200 Gramm", "manufacturer": "Inverkehrbringer:<br/>\nJohannes Kordt Handelskontor GmbH,<br/>\nApenraderstraße 13,<br/>\n24939 Flensburg", "reason": "Fremdkörper", "information": "Grund für den Rückruf der betroffenen Charge sind mögliche Fremdkörper in Form von Glas.", "listCountries": [
-
-
@ilovegym sagte in [Javascript] für Warnungen von Lebensmittelwarnung:
@d4ve
ah, gibt ne neue Version.. danke!@MCU
funktioniert hier auch nicht.. auch kein Fehler im Debuglog, anscheinend wird die Sendto-funktion garnicht aufgerufen... ?du ich hab keine ahnung davon ^^ ich weiß nicht ob man da was via blocky machen kann oder so das man die warnungen bekommt aber so scheid es net zugehen
// Message senden an telegram let items = JSON.parse(data); let x=0; for(let i=0; i<items.length;i++){ if(formatDate(items[i].pubDateTS,'DD.MM.YYYY') == formatDate(new Date(), 'DD.MM.YYYY')){ // Telegram // console.log(encodeURIComponent(items[i].pictureSrc)) if(sendTelegram){ if(!items[i].send.includes('telegram')){ sendTo('telegram.'+telegramInstance,{ user: telegramUser, parse_mode: "HTML", //<b><u>Lebensmittel-Warnung Heute</u></b>\n<b>'+items[i].title +'</b>\n'+ //\n\nGrund: '+ items[i].reason text: '<b><u>Lebensmittel-Warnung ('+formatDate(new Date(),'DD.MM.YYYY')+')</u></b>\n<b>'+items[i].title +'</b>\n'+'<a href="'+encodeURI(items[i].pictureSrc.substring(1,items[i].pictureSrc.length-1)) +'">Bild-URL</a>'+'\n\nGrund: '+ items[i].reason }, function (res) { console.log('Sent to ' + res + ' users'); }); items[i].send.push('telegram') } }
-
Ich schau es mir an. Welche Version von telegram und pushOver wird genutzt?
-
@mcu sagte in [Javascript] für Warnungen von Lebensmittelwarnung:
Ich schau es mir an. Welche Version von telegram und pushOver wird genutzt?
Danke für die schnelle antwort telergam v3.9.0
aber bei alexa geht es auch nichtalso ich frag lieber nochmal nach nicht das was falsch verstanden wird!
ich nutze dein Script ohne VIS ich habe nur in dein Script die daten von alexa eingegeben und aktiviert das gleiche für Telegram
danach starte ich das Script. und warte auf einer Nachricht ^^ im datenpunkt sind sachen vorhanden.lg David
-
EDIT:
Habe die Datenpunkte mal geloescht, jetzt holt er Daten, und den Datenpunkt Land eingestellt. - jetzt hab ich hier auch die Auswahl der Laender...
Pushover kommt aber immer noch nicht..Original:
Ich verwende Pushover 4.1.0 - kein Telegram.
Habe auch mal die Datenpunkte geleert, es werden keine neuen abgerufen.Daher auch meine Frage, was ist mit den Laendern, ich habe mal versuchsweise in das Object ein Land eingetragen, hilft aber auch nicht.
Im Debug wird leider nichts ausgespuckt, keine Fehlermeldung, daher meine Vermutung, dass ohne Objects auch nichts versendet wird, die Routine sendmessage wird nicht gestartet.Ich vewende auch keine Vis, sondern lasse mir den html in MinuVIS anzeigen.
Mit Version 1.0.2 kam hier noch etwas, mit Version 1.0.3 bleiben die Datenpunkte fuer json und html leer.
( habe diese manuell geleert )Vielleicht einfach mal ein paar logausgaben hinzufuegen, dann testen wir gerne
Meine Config:
let foodJSONDP = '0_userdata.0.vis.TABELLEN.LebensmittelWarnungLD'/*LebensmittelWarnung-json*/ let foodHTMLDP = '0_userdata.0.vis.TABELLEN.LebensmittelWarnung'/*LebensmittelWarnung-html*/ let selectedCountryDP = '0_userdata.0.vis.TABELLEN.Lebensmittelwarnung-Land'/*Lebensmittelwarnung-Land*/ let telegramUser = ''; // '' für alle let telegramInstance = '0'; let sendTelegram = false; // true -> telegram muss installiert sein let pushOverInstance = '0'; let sendPushOver = true; // true -> pushOver muss installiert sein let alexaEchoDevice = 'G2A.....'; let alexaInstance = '0'; let sendAlexa = false; // true -> Alexa muss installiert sein let jarvisInstance = '0' let sendJarvisPopup = false; let newSendSet = false;
-
@ilovegym Gesendet wird nur am Erstellungsdatum. Also bei mir funktioniert telegram , pushOver.
Ich setze mal die Möglchkeit rein, das man eine bestimmte Anzahl an letzten Warnungen nochmal senden kann mit einem Extra-DP (Button) -
ah, ok, ja bitte, zum Testen ideal oder einfach nur fuer den aktuellen Abruf! Super!
-
@mcu sagte in [Javascript] für Warnungen von Lebensmittelwarnung:
@ilovegym Gesendet wird nur am Erstellungsdatum. Also bei mir funktioniert telegram , pushOver.
Ich setze mal die Möglchkeit rein, das man eine bestimmte Anzahl an letzten Warnungen nochmal senden kann mit einem Extra-DP (Button)perfekt also muss man erstmal warten bis eine neue Warnung kommt? ok dann läuft ja alles
eine frage noch'Baden-Würtemberg':'Baden-Würtemberg', 'Bayern':'Bayern', 'Berlin':'Berlin', 'Brandenburg':'Brandenburg', 'Bremen':'Bremen', 'Hamburg':'Hamburg', 'Hessen':'Hessen', 'Mecklenburg-Vorpommern':'Mecklenburg-Vorpommern', 'Niedersachsen': 'Niedersachsen', 'Nordrhein-Westfalen':'Nordrhein-Westfalen', 'Rheinland-Pfalz':'Rheinland-Pfalz', 'Saarland':'Saarland', 'Sachsen':'Sachsen', 'Sachsen-Anhalt':'Sachsen-Anhalt', 'Schleswig-Holstein': 'Schleswig-Holstein', 'Thüringen': 'Thüringen'
wenn ich nur bayern will lösch ich die anderen einfach raus`?
lg
-
nee, du waehlst den aus den du brauchst, im Datenpunkt:
-
Es gibt aber anscheinend Problem mit telegram, wenn man zu viel sendet?
sent to {"error":{"5533":{"code":"ETELEGRAM","message":"ETELEGRAM: 429 Too Many Requests: retry after 3"}}},{"error":{"5533":{"code":"ETELEGRAM","message":"ETELEGRAM: 429 Too Many Requests: retry after 4"}}} users
Sendet man dann nach 3 oder 4 Sekunden eine Nachricht, bekommt man nicht mal mehr eine Fehlermeldung. Hat das noch jemand beobachten können?