Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T

    This topic has been deleted. Only users with topic management privileges can see it.
    • Wszene
      Wszene @tombox last edited by

      @tombox sagte in Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T:

      Amazon:

      Login eingeben
      Wenn nötig vorab ein OTP token aus der 2FA App eingeben.

      Ich habe da mal eine Frage
      Wo bekomme ich denn den Token her?

      T 1 Reply Last reply Reply Quote 0
      • Christoph1337
        Christoph1337 last edited by Christoph1337

        @tombox
        Schön das du die optische Anpassung eingebaut hast! 🙂

        Kann man irgendwie verhindern, dass man beim Start des Adaptern immer eine Liste aller aktuellen und vergangenen Pakete bekommt?
        Idealerweise würde man hier lediglich noch nicht zugestellte Pakete als Benachrichtigung erhalten.

        Was auch später noch klasse wäre, wäre eine Liste als Widget.
        Ich verwende da meistens die von @liv-in-sky, die funktioniert super.

         
        
        
         //HIER WIRD PFAD UND FILENAME DEFINIERT
         const path = "/htmlexample.html";                   //FIlenamen definieren
         const home ='vis.0'                                 //wo soll das file im iobroker-file-system liegen ? (oder z.b auch iqontrol.meta)
         let   braucheEinFile=false;                          // bei true wird ein file geschrieben
         let   braucheEinVISWidget=true;                     // bei true wird ein html-tabelle in einen dp geschrieben - siehe nächste zeile
         let dpVIS=DPPath         //WICHTIG wenn braucheEinVISWidget auf true gesetzt !!  dp zusätzlich für VIS-HTML-Basic-Widget
         //---------------------------------------
        
        //HIER DIE SPALTEN ANZAHL DEFINIEREN - jede Spalte einen Wert - in diesem Beispiel sind es 2
        var htmlFeld1='Gerät';                            // überschrift Tabellen Spalte1
        var htmlFeld2='Wert';                              // überschrift Tabellen Spalte2
        
        //-----------------------------------
        
        
        
        //hier werden die styles für die tabelle definiert
        //ÜBERSCHRIFT ÜBER TABELLE
        let   htmlUberschrift=true;                           // mit Überschrift über der tabelle
        const htmlFeldUeber='Stromkosten';              // Überschrift
        const htmlFarbUber="#2C7FB6";                         // Farbe der Überschrift
        //MEHRERE TABELLEN NEBENEINANDER
        let   mehrfachTabelle=Spalten;                              // bis zu 4 Tabellen werden nebeneinander geschrieben-  verkürzt das Ganze, dafür etwas breiter - MÖGLICH 1,2,3,oder 4 !!!
        const htmlFarbZweiteTabelle="#42A6EA";                // Farbe der Überschrift bei jeder 2.ten Tabelle
        const htmlFarbTableColorUber="#2C7FB6";               // Überschrift in der tabelle - der einzelnen Spalten
        //GANZE TABELLE
        const htmlSchriftart="RobotoCondensed-Regular";
        const htmlSchriftgroesse="13px";
        //FELDER UND RAHMEN
        const htmlFarbFelderschrift="#DADFDA";                  // SchriftFarbe der Felder
        const htmlFarbFelderschrift2="#E3FBE2";                 // SchriftFarbe der Felder für jede 2te Tabelle
        const htmlFarbTableColorGradient1="#3F403F";          //  Gradient - Hintergrund der Tabelle - Verlauffarbe
        const htmlFarbTableColorGradient2="#3F403F";          //  Gradient - Hintergrund der Tabelle - ist dieser Wert gleich Gradient1 gibt es keinen verlauf
        const htmlFarbTableBorderColor="#2C7FB6";             // Farbe des Rahmen - is tdieser gleich den gradienten, sind die rahmen unsichtbar
        const htmlRahmenLinien=1;                            // Format für Rahmen(Gitter)linien 1=alle - 2=nur vertikal - 3= nur horizontal - 4=keine
        
        // HIER NICHTS  ÄNDERN
        const htmlEnd=      '</table></body>';
        const htmlStart=    '<!DOCTYPE html><html lang="de"><head><title>Vorlage</title><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body>';
        const htmlUeber=    "<p style=\"color:"+htmlFarbUber+"; font-family:"+htmlSchriftart+"; font-weight: bold\">"+htmlFeldUeber+"</p>";
        const htmlTabStyleCol= "<table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"3\" cellspacing=\"3\" cellpadding=\"3\"  rules=\"cols\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                               "; font-family:"+htmlSchriftart+";background-image: linear-gradient(42deg,"+htmlFarbTableColorGradient2+","+htmlFarbTableColorGradient1+");\">";
        const htmlTabStyleRow= "<table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"3\" cellspacing=\"3\" cellpadding=\"3\"  rules=\"rows\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                               "; font-family:"+htmlSchriftart+";background-image: linear-gradient(42deg,"+htmlFarbTableColorGradient2+","+htmlFarbTableColorGradient1+");\">";
        const htmlTabStyleAll= "<table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"3\" cellspacing=\"3\" cellpadding=\"3\"  rules=\"all\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                               "; font-family:"+htmlSchriftart+";background-image: linear-gradient(42deg,"+htmlFarbTableColorGradient2+","+htmlFarbTableColorGradient1+");\">";   
        const htmlTabStyleNone= "<table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"3\" cellspacing=\"3\" cellpadding=\"3\"  rules=\"none\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                               "; font-family:"+htmlSchriftart+";background-image: linear-gradient(42deg,"+htmlFarbTableColorGradient2+","+htmlFarbTableColorGradient1+");\">";                                                                     
        const htmlTabUeber1="<tr style=\"color:"+htmlFarbTableColorUber+"; font-weight: bold\">";
        const htmlTabUeber3="</tr>";
        
        
        
        ////NICHTS ÄNDERN  - abhängig von den oben definierten _Spalten - in diesem Beispiel sind es 2
        
        var htmlTabUeber2="<td  align=center>&ensp;"+htmlFeld1+"&ensp;</td><td align=center>&ensp;"+htmlFeld2+"&ensp;</td>";
        var htmlTabUeber2_1="<td  align=center style=\"color:"+htmlFarbZweiteTabelle+"\">&ensp;"+htmlFeld1+"&ensp;</td><td  align=center style=\"color:"+htmlFarbZweiteTabelle+"\">&ensp;"+htmlFeld2+
                            "&ensp;</td>";
        //------------------------------------------------------
         
        
        var htmlOut="";
        
        
        
        function writeHTML(){
        
              var htmlTabStyle;
            switch (+htmlRahmenLinien) { 
            case 1: htmlTabStyle=htmlTabStyleAll; break;
            case 2: htmlTabStyle=htmlTabStyleCol; break;
            case 3: htmlTabStyle=htmlTabStyleRow; break;
            case 4: htmlTabStyle=htmlTabStyleNone; break;
            
        };  
        
        htmlOut="";
        
        var counter=-1;
        var htmlTabUeber="";
        switch (mehrfachTabelle) { 
            case 1: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber3;  break;
            case 2: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber3; break;
            case 3: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber2+htmlTabUeber3; break;
            case 4: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber3; break;
        };    
        
         //HIER SIND DIE § WERTE, DIE IN DER SCHLEIFE GEFILTERET WER%DEN - Jede spalte einen wert
         var val1;  var val0;
         //------------------------------------------------------------
         
         
         //SCHLEIFE FÜR DIE WERTE
          for (var x=0;x<myList.length;x++){
              counter++;
              if(myList[x][1]!=null){
                                    val0  = myList[x][0];
                                    val1  = myList[x][1]
             
              
                                    //if (val1==false) {val1="❌"} else{val1="✅"}  
                                    
                                    }  
             
             
        
        
        
        
                
         
              //HIER WERDEN DIE DATEN DER SCHLEIFE ZUSAMMENGESETZT - hat man oben 2 Felder definiert, braucht man hier 2 Werte
            
                switch (mehrfachTabelle) {  
                  case 1:                    htmlOut=htmlOut+"<tr><td>&ensp;"+val0+"&ensp;</td><td align=center>&ensp;"+val1+"&ensp;</td></tr>"; break;
                  case 2:  if(counter%2==0)  {htmlOut = htmlOut+"<tr><td>&ensp;"+val0+"&ensp;</td><td align=center>&ensp;"+val1+"&ensp;</td>"; } 
                                        else {htmlOut = htmlOut+"<td style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align=center style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td></tr>";} break;
                                             
                  case 3: if(counter%3==0 )  {htmlOut = htmlOut+"<tr><td>&ensp;"+val0+"&ensp;</td><td align=center>&ensp;"+val1+"&ensp;</td>"; } 
                                        else { if(counter%3==1 )  { htmlOut = htmlOut+"<td style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align=center style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td>";} 
                                                         else    {htmlOut = htmlOut+"<td>&ensp;"+val0+"&ensp;</td><td align=center>&ensp;"+val1+"&ensp;</td></tr>";}
                                                   } break;
        
        
                  case 4: if(counter%4==0)  {htmlOut = htmlOut+"<tr><td>&ensp;"+val0+"&ensp;</td><td align=center>&ensp;"+val1+"&ensp;</td>"; } 
                                            else {if(counter%2==1 )  { htmlOut = htmlOut+"<td style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align=center style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td>";} 
                                                         else    {if(counter%2==1 && counter%4==3)  { htmlOut= htmlOut+"<td style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align=center style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td></tr>";} 
                                                                           else    {htmlOut = htmlOut = htmlOut+"<td>&ensp;"+val0+"&ensp;</td><td>&ensp;"+val1+"&ensp;</td>";}}
                                                   } break;
        
              } //switch ende
        
             //---------------------------------------------
            }; //Schleifen ende
              
                   //Ausgabe über VIS html widget - tabelle in datenpunkt schreiben - html tabelle ohne html header und body
                    var htmlOutVIS="";
                    htmlUberschrift ? htmlOutVIS=htmlUeber+htmlTabStyle+htmlTabUeber+htmlOut+"</table>" : htmlOutVIS=htmlTabStyle+htmlTabUeber+htmlOut+"</table>";
                    //log(htmlOutVIS);
                    if (braucheEinVISWidget) setState(dpVIS, htmlOutVIS );
         
          //mit oder ohne überschrift
          htmlUberschrift ? htmlOut=htmlStart+htmlUeber+htmlTabStyle+htmlTabUeber+htmlOut+htmlEnd : htmlOut=htmlStart+htmlTabStyle+htmlTabUeber+htmlOut+htmlEnd;
          //log(htmlOut);
        } // function ende
         
         //hier wird schleife gestartet und das file geschrieben
          
         //schedule("*/20 * * * * *",  function () {  
          writeHTML();
          if (braucheEinFile) {writeFile(home, path ,htmlOut, function (error) { /* log('file written');*/  });}
         //}); 
         
        
        
        
        
        
        1 Reply Last reply Reply Quote 0
        • T
          tombox @Wszene last edited by

          @wszene Naja wenn du 2FA bei amazon aktiviert hast, hast du doch eine AuthApp aktiv wo du deine Token herbekommst oder wie kommst du an dein 2FA Token
          @senger1985 Ich habe den check bei ups verbessert
          @Christoph1337 Es ist eigentlich absicht damit man sieht das bei adapter start alles funktioniert. Eigentlich sollte der Adapter ja nie neugestartet werden außer jetzt wo die Updatefrequenz hoch ist
          Gibt es denn ein Beispiel oder Adapter der so ein Widget eingebaut hat?

          Wszene Christoph1337 2 Replies Last reply Reply Quote 1
          • Wszene
            Wszene @tombox last edited by

            @tombox sagte in Adapter Paketverfolgung DHL, Briefe, Amazon, DPD,GLS,UPS,17T:

            @wszene Naja wenn du 2FA bei amazon aktiviert hast, hast du doch eine AuthApp aktiv wo du deine Token herbekommst oder wie kommst du an dein 2FA Token

            Die Nummer bekommen wir per SMS zugesendet

            1 Reply Last reply Reply Quote 0
            • Christoph1337
              Christoph1337 @tombox last edited by

              @tombox
              Vielleicht kann man den Versand ja beim Start optional machen. Einfach eine Checkbox im Adapter?

              Als Beispiel kann ich z.B. das hier nennen:
              https://forum.iobroker.net/topic/28789/script-fürtabelle-der-batterie-zustände

              Es gibt auch einige andere dieser Tabellen.
              Ziemlich nützlich und prima für die einfache Darstellung in der VIS.

              Xsev 1 Reply Last reply Reply Quote 0
              • Xsev
                Xsev @Christoph1337 last edited by Xsev

                Wie stellt ihr denn die Amazon Lieferungen in Vis dar, die sich aktuell in der Lieferung befinden, hab mittlerweile ne große Liste mit zugestellten Paketen aber die sich in Zustellung befinden gehen halt total unter. Hätte auf meiner Vis Infoseite gerne eine Benachrichtigung das sich ein Paket heute in Zustellung befindet, evtl. sogar Paketdienstleister übergreifend. Hat das jemand realisiert?

                Christoph1337 T 2 Replies Last reply Reply Quote 0
                • Christoph1337
                  Christoph1337 @Xsev last edited by

                  @xsev Genau das habe ich ja eben nachgefragt. ⬆

                  Xsev 1 Reply Last reply Reply Quote 0
                  • Xsev
                    Xsev @Christoph1337 last edited by Xsev

                    @christoph1337 Ja wobei ich persönlich jetzt keine Tabelle benötige, mir würde ein einfacher Datenpunkt genügen, mir dem ich mir eine dezente Info auf meinem Infoscreen schalten kann. Habs gern minimalistisch aber das ja Geschmackssache. 😉

                    1 Reply Last reply Reply Quote 0
                    • T
                      tombox @Xsev last edited by

                      @xsev Könnte nochmal filtern die "In Zustellung" im status haben aber kenne nicht alle Texte aller anbieter

                      Xsev 1 Reply Last reply Reply Quote 0
                      • Xsev
                        Xsev @tombox last edited by Xsev

                        @tombox ja sowas wollte ich per Skript selber lösen aber bsp. Amazon hat durch die Lieferzeit, die in der Nachricht steht immer unterschiedliche Meldungen, daher konnte ich den Wert nicht triggern. Aber du hast da sicher deutlich mehr Möglichkeiten wie ich. Das wäre halt ideal wenn man bsp. ein Delivery-today hätte der dann auf true gestellt wird und das über den Status "in Zustellung" abgefragt werden könnte.

                        edit:
                        Ich hab aktuell nur DHL und Amazon in Betrieb, daher weiß ich auch nicht wie es bei den anderer Anbietern ist. DHL ist da mit den Infos die im Adapter geliefert werden genial.

                        1 Reply Last reply Reply Quote 0
                        • DJMarc75
                          DJMarc75 last edited by

                          @tombox
                          Also im Moment sind die Telegrams der kompletten Pakete und Briefe bei jedem Neustart noch absolut ok. Ist da was geplant wenns ins latest geht ?
                          Grüßle

                          T 1 Reply Last reply Reply Quote 0
                          • DJMarc75
                            DJMarc75 last edited by DJMarc75

                            @tombox
                            habe eben Amazon bei mir mit eingefügt und ich bekomme alle 15 Minuten per Telegram ALLE zugestellten Paketbenachrichtigungen zugesendet..... oder ich muss irgendwas vergessen haben zu installieren

                            Rene55 1 Reply Last reply Reply Quote 0
                            • Rene55
                              Rene55 @DJMarc75 last edited by

                              @djmarc75 Den Effekt habe ich seit heute auch. Nur das (zugestellte) Amazon-Paket von heute sehe ich zwar in den Datenpunkten, aber keine Nachricht per Telegram. @tombox Muss ich im Amazonkonto den/die Störenfriede irgendwie "beruhigen" ?

                              1 Reply Last reply Reply Quote 0
                              • Wszene
                                Wszene last edited by

                                Ich habe es jetzt auch erfolgreich zum laufen gebracht
                                Hier mal meine Amazon VIS
                                Bildschirmfoto 2022-02-22 um 22.13.47.png

                                1 Reply Last reply Reply Quote 0
                                • T
                                  tombox @DJMarc75 last edited by

                                  @DJMarc75
                                  @Rene55
                                  Wiederholende Benachrichtigung von Amazon Paket bei den es auch ein DHL Status gibt wurde behoben.

                                  Alle Benachrichtigung bei Neustart muss erstmal so bleiben ich müsste mir sonst alle Benachrichtigungen merken und der Datenpunkt würde dann schnell sehr groß werden.

                                  @Xsev Ich habe mal ein Datenpunkt inDelivery eingebaut

                                  Xsev Rene55 2 Replies Last reply Reply Quote 2
                                  • Xsev
                                    Xsev @tombox last edited by Xsev

                                    @tombox Super! Danke! Schau ich mir heute gleich an.

                                    Ich hab DPD mal in Betrieb genommen. Da hab ich gerade 2 Lieferungen, leider werden keine Daten synchronisiert. Laut log ist DPD Login erfolgreich. Es erscheint nur ein Jsondatenpunkt "JsonSendungen". Ist das richtig?

                                    T 1 Reply Last reply Reply Quote 0
                                    • Rene55
                                      Rene55 @tombox last edited by

                                      @tombox Die alten Meldungen bei Neustart sind ja auch kein Thema. Über Nacht habe ich 132 Telegram-Nachrichten bekommen - das sind ein paar zuviel. Ich werd gleich mal updaten und beobachten.

                                      1 Reply Last reply Reply Quote 0
                                      • T
                                        tombox @Xsev last edited by

                                        @xsev Sollten eigentlich alles kommen
                                        https://my.dpd.de/myParcel.aspx
                                        sind da Sendungen?

                                        Xsev 1 Reply Last reply Reply Quote 0
                                        • Xsev
                                          Xsev @tombox last edited by

                                          @tombox Ja in myDPD auf der Seite hab ich beide Sendungen, im Adapter sieht es so aus.

                                          2022-02-23 (3).png

                                          Kann es damit zusammen hängen, ich habe die Benachrichtigung von DPD an eine andere Mailadresse bekommen und habe die Sendungen dann über meinen "richtigen" Account (den ich auch abrufe) übernommen bwz. eingetragen. Sie stehen jetzt normal als Sendungen in meinem DPD account.

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            tombox last edited by

                                            @xsev Also wenn du die mail adresse mit der du dich bei mydpd angemeldet hast und die pakete siehst sollten sie auch da sichtbar sein

                                            Xsev 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            999
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            17track amazon briefe dhl dpd gls ups
                                            121
                                            1525
                                            449756
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo