Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Emails empfangen.

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Emails empfangen.

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

      Hallo
      Babt ihr ne idee wie man aus dem subject in blockly "Alarm Einsatz 1234" nur "Alarm" auslesen kann? Da sich der Text hinter Alarm sich immer ändert, und ich möchte wenn die Email rein kommt, gucken ob Alarm im Subject ist, wenn ja dann soll er er dann ein Wert auf wahr setzten.

      Vielen Dank
      Trino

      1 Reply Last reply Reply Quote 0
      • gelberlemmy
        gelberlemmy @Neuschwansteini last edited by

        @ilovegym sagte in Emails empfangen.:

        @Marty56 hmm da kommt bei mir nur ein [object Object], wenn ich aber die einzelnen variablen in einen State schreibe, gehts, also die Daten werden ausgelesen, aber nicht Email_Reception eingetragen.. ?
        Ich brauchs nicht unbedingt, möchte aber wissen, warum das nicht geht.. 🙂

        Hier mal mein Script, es wird unter javascript.0. ein Verzeichnis Email angelegt, wo alle Datenpunkte dann eingetragen werden ( so habe ich mehr übersicht )

        var mailobj = {val:
                        {
                            from:  "",
                            topic: "",
                            text: "",
                        }
                    };
        createState("Email.Reception",mailobj);
        createState("Email.from_address");
        createState("Email.from_name");
        createState("Email.mail_subject");
        createState("Email.mail_text");
                
        schedule("*/2 * * * *", function (obj) {
            var MailListener = require("mail-listener2");
            var mailListener = new MailListener({
              username: "blabla.com",    // hier Email Adresse eintragen
              password: "geheimespassword",	      // hier Passwort eintragen	
              host: "imap.gmail.com",
              port: 993, // imap port
              tls: true,
              connTimeout: 10000, // Default by node-imap
              authTimeout: 5000, // Default by node-imap,
              debug: null, // Or your custom function with only one incoming argument. Default: null
              tlsOptions: { rejectUnauthorized: false },
              mailbox: "INBOX", // mailbox to monitor
              searchFilter: ["UNSEEN"], // the search filter being used after an IDLE notification has been retrieved
              markSeen: true, // all fetched email willbe marked as seen and not fetched next time
              fetchUnreadOnStart: true, // use it only if you want to get all unread email on lib start. Default is `false`,
              mailParserOptions: {streamAttachments: true}, // options to be passed to mailParser lib.
              attachments: false, // download attachments as they are encountered to the project directory
              attachmentOptions: { directory: "attachments/" } // specify a download directory for attachments
            });
        
            mailListener.start();
            mailListener.on("server:connected", function(){console.log("imapconconnected");});
            mailListener.on("server:disconnected", function(){console.log("imapDisconnected");});
            mailListener.on("error", function(err){console.log(err);});
            mailListener.on("mail", function(mail, seqno, attributes){
                log(mail.from[0].address);
                log(mail.from[0].name);
                log(mail.subject);
                log( mail.text);
                var mailobj = {val:
                        {
                            from:  mail.from[0].name,
                            topic: mail.subject,
                            text:  mail.text
                        }
                    };
                setState("Email.Reception", mailobj);
                setState("Email.from_address", mail.from[0].address);
                setState("Email.from_name", mail.from[0].name);
                setState("Email.mail_subject", mail.subject);
                setState("Email.mail_text", mail.text);
        
            });
            mailListener.on("attachment", function(attachment){console.log(attachment.path);});
            setTimeout(function(){mailListener.stop();},20000);
        });
        

        Moin, ist zwar schon etwas älter, aber läuft dies noch mit den aktuellen Paketen in IOBroker ?
        Wenn ich dies richtig verstehe, dann muss ich folgendes installieren ?

        npm install mailparser --save
        
        npm install imap
        
        npm install mail-listener2
        

        Dann dort das von @ilovegym Java in Scripte mit leben füllen ?

        Gruß André

        Neuschwansteini 1 Reply Last reply Reply Quote 0
        • Neuschwansteini
          Neuschwansteini @gelberlemmy last edited by

          @gelberlemmy

          Hi,
          du kannst die npm Pakete auch im javascript Adapter eintragen, dann werden die von iobroker direkt nach dem starten des javascript-adapters installiert und gestartet.

          gelberlemmy 1 Reply Last reply Reply Quote 0
          • gelberlemmy
            gelberlemmy @Neuschwansteini last edited by

            @ilovegym danke für die Info. Wie sollen die denn dort eingetragen werden? Läuft das denn so noch ohne Probleme?

            Neuschwansteini 1 Reply Last reply Reply Quote 0
            • Neuschwansteini
              Neuschwansteini @gelberlemmy last edited by

              @gelberlemmy

              musste gerade selbst mal schauen.. nee.. da gibts n update Paket.. schau mal hier:
              16b98de3-2b1a-4294-8fad-a154062e373c-grafik.png

              gelberlemmy 2 Replies Last reply Reply Quote 0
              • gelberlemmy
                gelberlemmy @Neuschwansteini last edited by

                @ilovegym hast aber nur den Maillistner eingetragen. Wird dort der ganze Befehl eingegeben. Muss gleich mal schauen wenn ich zu Hause bin. Wie hast du es gelöst, bei IMAP immer verbunden zu sein? Ich sehe da die Timeout im Skript

                1 Reply Last reply Reply Quote 0
                • gelberlemmy
                  gelberlemmy @Neuschwansteini last edited by

                  @ilovegym sagte in Emails empfangen.:

                  @gelberlemmy

                  musste gerade selbst mal schauen.. nee.. da gibts n update Paket.. schau mal hier:
                  16b98de3-2b1a-4294-8fad-a154062e373c-grafik.png

                  So hab einmal geschaut. Kann es sein, dass du nur die Pakete mit Java zusammen startest? Nach meiner Eintragung und Neustart von Java ist dort dann nichts passiert. Keine Installation etc.

                  Neuschwansteini 1 Reply Last reply Reply Quote -1
                  • Neuschwansteini
                    Neuschwansteini @gelberlemmy last edited by

                    @gelberlemmy normalerweise installiert der javascript-adapter die Pakete beim Neustart des Adapters.

                    gelberlemmy 2 Replies Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @M-A-X last edited by

                      @M-A-X

                      du kannst ganz ohne vpn und mit tasker einen oder mehrere datenpunkt in iobroker schreiben

                      https://forum.iobroker.net/post/274658

                      M 1 Reply Last reply Reply Quote 0
                      • gelberlemmy
                        gelberlemmy @Neuschwansteini last edited by

                        @ilovegym sagte in Emails empfangen.:

                        @gelberlemmy normalerweise installiert der javascript-adapter die Pakete beim Neustart des Adapters.

                        Moin, hab den Adapter auch neu gestartet. Ich habe einfach den Namen wie folgt "mail-listener2" des Paketes eingetragen. Aber im LOG war nichts zu sehen. Auch kein Start des Adapters.

                        Werde diesen einfach einmal händisch installieren und dann dort eintragen, damit dieser dann auf jedenfall mit gestartet wird. Vielleicht klappt das ja.

                        Neuschwansteini 1 Reply Last reply Reply Quote 0
                        • Neuschwansteini
                          Neuschwansteini @gelberlemmy last edited by

                          @gelberlemmy vielleicht gibts das paket auf npm nicht mehr? Hab da schon lange nichts mehr an der Installation gemacht..
                          Schau einfach mal, was da jetzt aktuell ist..

                          1 Reply Last reply Reply Quote 0
                          • gelberlemmy
                            gelberlemmy @Neuschwansteini last edited by gelberlemmy

                            @ilovegym sagte in Emails empfangen.:

                            @gelberlemmy normalerweise installiert der javascript-adapter die Pakete beim Neustart des Adapters.

                            Ich habe das jetzt mal über Putty angeschoben und sieht wie folgt aus. Am Ende gibt eine Warnung. Ist diese normal ?

                            pi@raspberrypi:~ $ npm install imap
                            [..................] - rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] - rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] - rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] - rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] - rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] - rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] \ rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] \ rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] \ rollbackFailedOptional: verb npm-session 6f2886487ff7552
                            [..................] / fetchMetadata: sill resolveWithNewModule imap@0.8.19 che
                            [..................] - fetchMetadata: sill resolveWithNewModule imap@0.8.19 che
                            [..................] - fetchMetadata: sill resolveWithNewModule imap@0.8.19 che
                            [..................] / fetchMetadata: sill resolveWithNewModule imap@0.8.19 che
                            [..................] - fetchMetadata: sill resolveWithNewModule imap@0.8.19 che
                            [..................] \ fetchMetadata: sill resolveWithNewModule imap@0.8.19 che
                            [..................] / fetchMetadata: sill resolveWithNewModule readable-stream
                            [..................] | fetchMetadata: sill resolveWithNewModule readable-stream
                            [..................] \ fetchMetadata: sill resolveWithNewModule readable-stream
                            [..................] \ fetchMetadata: sill resolveWithNewModule readable-stream
                            [  ................] - fetchMetadata: sill resolveWithNewModule string_decoder@
                            [      ............] - diffTrees: sill install generateActionsToTake
                            [       ...........] | postinstall: sill install executeActions
                            [       ...........] - extract:imap: verb lock using /home/pi/.npm/_locks/stagi
                            [       ...........] - extract:imap: verb lock using /home/pi/.npm/_locks/stagi
                            [       ...........] / extract:imap: verb lock using /home/pi/.npm/_locks/stagi
                            [            ......] | finalize:imap: sill doSerial finalize 64
                            [            ......] / refresh-package-json:imap: timing action:finalize Comple
                            [            ......] | refresh-package-json:imap: timing action:finalize Comple
                            [            ......] \ postinstall: info lifecycle imap@0.8.19~postinstall: ima
                            
                            
                            npm WARN saveError ENOENT: no such file or directory, open '/home/pi/package.json'
                            npm notice created a lockfile as package-lock.json. You should commit this file.
                            npm WARN enoent ENOENT: no such file or directory, open '/home/pi/package.json'
                            npm WARN pi No description
                            npm WARN pi No repository field.
                            npm WARN pi No README data
                            npm WARN pi No license field.
                            + imap@0.8.19
                            added 8 packages from 4 contributors and audited 8 packages in 1.604s
                            found 0 vulnerabilities
                            [            ......] \ postinstall: sill install printInstalled
                            
                            
                            Neuschwansteini 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @Neuschwansteini last edited by

                              @ilovegym

                              würde gerne die mails mit dem status nicht gelesen belassen - habe dazu markseen_= false; geändert

                              die mails werden trotzdem als gelesen markiert - ist das bei dir auch so ?

                              Neuschwansteini 1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky last edited by

                                @ilovegym
                                hat sich erledigt - habe mal eine andere mailbox eingetragen - jetzt funktioniert es

                                1 Reply Last reply Reply Quote 0
                                • Neuschwansteini
                                  Neuschwansteini @gelberlemmy last edited by

                                  @gelberlemmy hast nicht im richtigen Verzeichnis installiert, würde ich sagen..

                                  gelberlemmy 1 Reply Last reply Reply Quote 0
                                  • Neuschwansteini
                                    Neuschwansteini @liv-in-sky last edited by

                                    @liv-in-sky ja, kann an der Mailbox liegen, hatte das ab und zu mal, störte mich aber weniger..

                                    liv-in-sky 2 Replies Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @Neuschwansteini last edited by

                                      @ilovegym

                                      ist auch ein anderer provider - vielleicht liegt es daran ?

                                      1 Reply Last reply Reply Quote 0
                                      • gelberlemmy
                                        gelberlemmy @Neuschwansteini last edited by

                                        @ilovegym lustigerweise funktioniert das jetzt. Bekomme die eMails in meinen Datenpunkten. Wo hätte ich das denn installieren sollen ? Hab dies ohne Verzeichnisangabe installiert....

                                        Neuschwansteini 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @Neuschwansteini last edited by liv-in-sky

                                          @ilovegym

                                          habe dein script noch ein wenig aufgebohrt - ne tabelle - was sonst 🙂

                                          Image 1.png

                                          bis jetzt kann man sortieren

                                          • wieviele mails angezeigt werden sollen
                                          • welche sender abgefragt werden sollen
                                          Master67 1 Reply Last reply Reply Quote 1
                                          • Neuschwansteini
                                            Neuschwansteini @gelberlemmy last edited by

                                            @gelberlemmy normal installiert iobroker die npm pakete im ordner /opt/iobroker/node_modules, im direkten iobroker ordner gehts auch, solange die files gefunden werden und die rechte stimmen.

                                            Ist besser wegen benutzerrechten und pfadangaben.. solange es jetzt läuft, lass es so.
                                            Daher auch der Hinweis, einfach im Javascript-Adapter das Paket zu hinterlegen, wie die anderen auch dort.
                                            Bei einem Neustart des Adapters werden die fehlenden Pakete installiert.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            968
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            31
                                            119
                                            17074
                                            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