NEWS
Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T
-
@wolfi913 sagte in Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T:
Schaut bei mir so aus, bin aber nicht der Skriptexperte:
Das schaue ich mir an. Vielen Dank an dich.
Deine Idee ist klasse. Ich habe das Skript von dir etwas modifiziert.
const MaxAnzeigeBriefe = 6; const leeresBild = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAAsSAAALEgHS3X78AAAADUlEQVR4nGP4//8/AwAI/AL+p5qgoAAAAABJRU5ErkJggg=="; for (let i = 1; i <= MaxAnzeigeBriefe; i++) { //DP zur Darstellung anlegen createState('0_userdata.0.Briefe.'+i, leeresBild, {type: 'string', read: true, write: true}); } createState('0_userdata.0.Briefe.vorhanden', 0, {type: 'number', read: true, write: true}); on({id: 'parcel.0.dhl.briefe.json', change: 'any'}, function (obj) { //hier nun die Bilder für VIS speichern setTimeout(function(){ var CountBriefe = 0; //hier die tatsächlich vorhandenen Briefe merken for (let i = 1; i <= MaxAnzeigeBriefe; i++) { if (existsState('parcel.0.dhl.briefe.currentAdvice.advices0'+i+'.image') === false) { setState('0_userdata.0.Briefe.'+i,leeresBild,true); } else { setState('0_userdata.0.Briefe.'+i,getState('parcel.0.dhl.briefe.currentAdvice.advices0'+i+'.image').val,true); CountBriefe++; } } setState('0_userdata.0.Briefe.vorhanden',CountBriefe,true); },5000); });Das Skript legt die DP selbst an. Über "MaxAnzeigeBriefe" kann die maximale Anzahl an darzustellenden (speichernden) Briefe festgelegt werden. Dann wird das ganze in einer Schleife abgearbeitet.
Falls du was davon verwenden möchtest, musst du nur noch die DP anpassen. Danke für die Inspiration.
Ro75.
-
Deine Idee ist klasse. Ich habe das Skript von dir etwas modifiziert.
const MaxAnzeigeBriefe = 6; const leeresBild = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACXBIWXMAAAsSAAALEgHS3X78AAAADUlEQVR4nGP4//8/AwAI/AL+p5qgoAAAAABJRU5ErkJggg=="; for (let i = 1; i <= MaxAnzeigeBriefe; i++) { //DP zur Darstellung anlegen createState('0_userdata.0.Briefe.'+i, leeresBild, {type: 'string', read: true, write: true}); } createState('0_userdata.0.Briefe.vorhanden', 0, {type: 'number', read: true, write: true}); on({id: 'parcel.0.dhl.briefe.json', change: 'any'}, function (obj) { //hier nun die Bilder für VIS speichern setTimeout(function(){ var CountBriefe = 0; //hier die tatsächlich vorhandenen Briefe merken for (let i = 1; i <= MaxAnzeigeBriefe; i++) { if (existsState('parcel.0.dhl.briefe.currentAdvice.advices0'+i+'.image') === false) { setState('0_userdata.0.Briefe.'+i,leeresBild,true); } else { setState('0_userdata.0.Briefe.'+i,getState('parcel.0.dhl.briefe.currentAdvice.advices0'+i+'.image').val,true); CountBriefe++; } } setState('0_userdata.0.Briefe.vorhanden',CountBriefe,true); },5000); });Das Skript legt die DP selbst an. Über "MaxAnzeigeBriefe" kann die maximale Anzahl an darzustellenden (speichernden) Briefe festgelegt werden. Dann wird das ganze in einer Schleife abgearbeitet.
Falls du was davon verwenden möchtest, musst du nur noch die DP anpassen. Danke für die Inspiration.
Ro75.
-
@wolfi913 ich habe dem Skript gerade noch etwas hinzugefügt. Die Anzahl der vorhandenen Briefe. Der DP wird automatisch angelegt und entsprechend befüllt.
Ro75.
-
@wolfi913 ich habe dem Skript gerade noch etwas hinzugefügt. Die Anzahl der vorhandenen Briefe. Der DP wird automatisch angelegt und entsprechend befüllt.
Ro75.
Welches Widget zeigt denn ein solches Base64 codiertes Bild an?
-
Welches Widget zeigt denn ein solches Base64 codiertes Bild an?
@ofbeqnpolkkl6mby5e13 html oder img src wie in Beitrag 1
-
@ofbeqnpolkkl6mby5e13 html oder img src wie in Beitrag 1
@tombox sagte in Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T:
@ofbeqnpolkkl6mby5e13 html oder img src wie in Beitrag 1
Bei mir in den Objekten ist der Datenpunkt "parcel.0.dhl.briefe.oldAdvices01.advices01.image" nicht vorhanden.
Nur parcel.0.dhl.briefe.oldAdvices01.advices01.image_url
Das funktioniert natürlich nicht.
Woran kann es liegen? -
@tombox sagte in Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T:
@ofbeqnpolkkl6mby5e13 html oder img src wie in Beitrag 1
Bei mir in den Objekten ist der Datenpunkt "parcel.0.dhl.briefe.oldAdvices01.advices01.image" nicht vorhanden.
Nur parcel.0.dhl.briefe.oldAdvices01.advices01.image_url
Das funktioniert natürlich nicht.
Woran kann es liegen? -
@tombox Leider nicht, auch nach einer neu installation nicht. Achja der Parcel adapter schmeist ständig
parcel.0 2023-12-21 20:26:15.231 error Error: read ETIMEDOUT raus.!

-
@tombox
So, alten Adapter komplett gelöscht und über Github neu Instaliert.
Keine Veränderung gleiche Bild wie schon Gepostet.@walter-o der DP "parcel.0.dhl.briefe.currentAdvice.advices01.image" ist auch nicht immer vorhanden. Nur dann wenn tatsächlich ein Brief in Auslieferung ist. Kommt am nächsten Tag kein Brief, dann ist dieser DP auch nicht da - so zumindest bei mir.
Ro75.
-
@walter-o der DP "parcel.0.dhl.briefe.currentAdvice.advices01.image" ist auch nicht immer vorhanden. Nur dann wenn tatsächlich ein Brief in Auslieferung ist. Kommt am nächsten Tag kein Brief, dann ist dieser DP auch nicht da - so zumindest bei mir.
Ro75.
-
Hallo und einen schönen guten Morgen,
gestern habe ich an meiner Version für Telegrambenachrichtigungen gearbeitet. Ich bin nicht der Blocklykünstler, deswegen bitte nicht wundern was ich da zusammen geklickt habe. Jedoch will ich euch das Script mal zum testen geben. Es war nicht ganz einfach bei dynamischen Objekten, die sich verschieben einen Lösungsansatz hin zubekommen, aber vielleicht ist es eine Grundlage für andere Versionen.
Was das Script macht:
Ändert sich bei Sendung01 die Sendungsnummer, ist ein neues Paket hinzugefügt worden und eine Meldung kommt per Telegram.Da sich alle Sendungsnummer in einen anderen Ordner verschieben, habe ich den Trigger für 1500ms gesperrt. Der Trigger soll nur auslösen, wenn sich der kurzStatus einer Sendung ändert.
Da ich nicht auf 20 Pakete einen Trigger setzen wollte, habe ich ein parcing auf die Zahl in der Ordnerstruktur, also zum Beispiel parcel.0.dhl.sendungen01.sendungsdetails.sendungsverlauf.kurzStatus gemacht. Es wird nach der Zahl 01 gesucht und dann aus diesem Pfad, Adresse, Sendungsnummer, statuskurz und vorrausichliches Ankunftdatum in Variablen gepackt.
Testet es, schaut es euch an und verbessert es bitte.
Der Telegramempfänger muss in den Funktionen einmal gesetzt werden.Viele Grüße. Über Feedback freue ich mich
@flexer
Gibts zu dem blockly ein update? :-)