Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter ioBroker.imap latest/stable

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Test Adapter ioBroker.imap latest/stable

Scheduled Pinned Locked Moved Tester
410 Posts 26 Posters 93.2k Views 21 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Michael dM Michael d

    Vielen Dank für den Adapter. Ich habe noch eine Frage:
    Wenn neue Emails kommen, wird die aktuellste ja bei Objekte unter imap.0.adresse_gmail_com.email.email_01 angezeigt. Ist es möglich mit einem Blockly bei einem bestimmten Betreff, egal welcher Absender gleich die Flag "Seen" zu setzen und wie würde das funktionieren?
    Ich habe jetzt mehrmals alles hoch unter runter gelesen und getestet, komme aber nicht auf eine Lösung.

    Vielen Dank!

    Grüße Micha

    L Offline
    L Offline
    Lucky_ESA
    Developer Most Active
    wrote on last edited by Lucky_ESA
    #352

    @michael-d Hast du mehrere Adressen in der Überwachung oder nur eine?

    Edit: Hier mal ein Beispiel. Es gibt viele Möglichkeiten.
    common.Skript_102.xml

    Michael dM 1 Reply Last reply
    1
    • L Lucky_ESA

      @michael-d Hast du mehrere Adressen in der Überwachung oder nur eine?

      Edit: Hier mal ein Beispiel. Es gibt viele Möglichkeiten.
      common.Skript_102.xml

      Michael dM Offline
      Michael dM Offline
      Michael d
      wrote on last edited by Michael d
      #353

      @lucky_esa ich habe nur eine Adresse konfiguriert. Ich möchte auch nur die neueste Email mit einer Flag bearbeiten, sprich immer die neueste, wenn sie einem bestimmten Betreff hat.

      Ich schaue es mir nachher mal an. Danke schon mal.

      Edit: In deinen Beispiel: Wo kann ich angeben, welchen Betreff die E-Mail haben muss, dass er die Flag setzt und wo muss ich die Flag angeben? Sorry für die Fragen, aber ich kapier es gerade nicht.

      Ecit: Also die Flag "seen" wird ja bereits in deinem Beispiel in der JavaScript Funktion gesetzt. Was ich noch nicht herausgefunden habe, ist der Betreff. Wo kann ich diesen eingeben, falls der übereinstimmt, dass nur dann die Flag gesetzt wird? Wenn ich das bei der Wenn-Dann Funktion auf Subject stelle, raucht mir der IMAP Adapter ab

      L 1 Reply Last reply
      0
      • Michael dM Michael d

        @lucky_esa ich habe nur eine Adresse konfiguriert. Ich möchte auch nur die neueste Email mit einer Flag bearbeiten, sprich immer die neueste, wenn sie einem bestimmten Betreff hat.

        Ich schaue es mir nachher mal an. Danke schon mal.

        Edit: In deinen Beispiel: Wo kann ich angeben, welchen Betreff die E-Mail haben muss, dass er die Flag setzt und wo muss ich die Flag angeben? Sorry für die Fragen, aber ich kapier es gerade nicht.

        Ecit: Also die Flag "seen" wird ja bereits in deinem Beispiel in der JavaScript Funktion gesetzt. Was ich noch nicht herausgefunden habe, ist der Betreff. Wo kann ich diesen eingeben, falls der übereinstimmt, dass nur dann die Flag gesetzt wird? Wenn ich das bei der Wenn-Dann Funktion auf Subject stelle, raucht mir der IMAP Adapter ab

        L Offline
        L Offline
        Lucky_ESA
        Developer Most Active
        wrote on last edited by
        #354

        @michael-d Die Buchstaben abc durch den Suchbegriff ersetzen und meine eMail duch deine ersetzen.

        common.Skript_102-1.xml

        Michael dM 1 Reply Last reply
        1
        • L Lucky_ESA

          @michael-d Die Buchstaben abc durch den Suchbegriff ersetzen und meine eMail duch deine ersetzen.

          common.Skript_102-1.xml

          Michael dM Offline
          Michael dM Offline
          Michael d
          wrote on last edited by
          #355

          @lucky_esa Vielen Dank, es funktioniert! Genau wie ich es brauche!

          1 Reply Last reply
          0
          • M Offline
            M Offline
            MeinhardRisch
            wrote on last edited by
            #356

            Hallo,

            bin mir nicht ganz sicher, ob ich hier richtig bin...

            Aber ich habe das kleine Problem, dass der Adapter bei Abrufen einer Email folgenden Fehler auslöst:

            Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
            unhandled promise rejection: Cannot read properties of undefined (reading 'seqno')
            TypeError: Cannot read properties of undefined (reading 'seqno') at Imap.updatejson (/opt/iobroker/node_modules/iobroker.imap/main.js:638:49) at EventEmitter.<anonymous> (/opt/iobroker/node_modules/iobroker.imap/lib/imap_event.js:600:30) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
            Cannot read properties of undefined (reading 'seqno')

            Danach wird er neu gestartet und wartet auf den Eingang einer neuen Mail

            M 1 Reply Last reply
            0
            • M MeinhardRisch

              Hallo,

              bin mir nicht ganz sicher, ob ich hier richtig bin...

              Aber ich habe das kleine Problem, dass der Adapter bei Abrufen einer Email folgenden Fehler auslöst:

              Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
              unhandled promise rejection: Cannot read properties of undefined (reading 'seqno')
              TypeError: Cannot read properties of undefined (reading 'seqno') at Imap.updatejson (/opt/iobroker/node_modules/iobroker.imap/main.js:638:49) at EventEmitter.<anonymous> (/opt/iobroker/node_modules/iobroker.imap/lib/imap_event.js:600:30) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
              Cannot read properties of undefined (reading 'seqno')

              Danach wird er neu gestartet und wartet auf den Eingang einer neuen Mail

              M Offline
              M Offline
              MeinhardRisch
              wrote on last edited by
              #357

              @meinhardrisch
              Sorry, nehme alles zurück... es fehlte wohl das Symbol ... 🙂

              L 1 Reply Last reply
              0
              • M MeinhardRisch

                @meinhardrisch
                Sorry, nehme alles zurück... es fehlte wohl das Symbol ... 🙂

                L Offline
                L Offline
                Lucky_ESA
                Developer Most Active
                wrote on last edited by
                #358

                @meinhardrisch sagte in Test Adapter ioBroker.imap latest/stable:

                @meinhardrisch
                Sorry, nehme alles zurück... es fehlte wohl das Symbol ... 🙂

                Dann ist ja alles gut. Du bist hier auch richtig. Auch wenn du was vergessen hast, darf der Adapter nicht crashen sondern sollte mit Fehleingaben umgehen können.
                Was genau hast du gemacht?

                Gruß//Lucky

                1 Reply Last reply
                0
                • L Lucky_ESA
                  Aktuelle Test Version 0.3.0
                  Veröffentlichungsdatum 26.02.2023
                  Github Link https://github.com/Lucky-ESA/ioBroker.imap
                  Status Nun als Stable 0.1.2 verfügbar

                  Hallo zusammen,

                  habe mal einen IMAP Adapter gschrieben. Es können beliebig viele IMAP Verbindungen anlegen und überwacht werden.
                  Updates oder neue Mails werden automatisch erkannt und die Infos in den Datenpunkten geschrieben.

                  Hier nun die Beschreibung:
                  Einstellung Instanz

                  • Aktiv: IMAP Verbindung aktivieren
                  • Host: Bsp:. imap.gmail.com
                  • Posteingang: Standard INBOX
                  • Port: Standard ist 993
                  • Benutzername: Dein Loginname
                  • Passwort: Dein Passwort
                  • max.: Maximale Anzahl an Mails die als Datenpunkte angelegt werden (max. 99)
                  • max. HTML: Maximale Anzahl an Mails die als HTML ausgegeben werden (max. 99)
                  • TLS: TLS Verschlüsselung. Sollte immer true haben
                  • Flaggen: Hier sind die Flags
                  • Symbol auswählen: Hier erst über "Symbole Erstellen" ein ICON hochladen. Wird als Folder ICON verwendet
                  • Token: Bsp.: Für Outlook. Ob das funktioniert kann ich nicht sagen
                  • tls-Option: Bsp.: {"rejectUnauthorized": false} oder leer lassen {}
                  • Auto-TLS: Hier lesen

                  Datenpunkte

                  • imap.0.xx.email: Hier werden die Mails angelegt wie in der Instanz eigestellt wurde. Habt ihr nur 7 Mails und
                    max. 10 eingetragen, bleiben die letzten 3 leer. Habt ihr 10 Mails und löscht 3, werden die letzten 3 Mails nicht geleert.
                  • imap.0.xx.remote.html: Hier könnt ihr euren CSS-Style anpassen
                  • imap.0.xx.remote.criteria: Neue Suchkreterium. Bleibt auch bei einem Neustart aktiv (auch als Blockly möglich)
                  • imap.0.xx.remote.reload_emails: Änderungen in HTML werden erst bei einer Aktualisierung übernommen. Hiermit kannst du den Code sofort übernehmen.
                  • imap.0.xx.remote.search_start: show_mails und criteria anwenden
                  • imap.0.xx.remote.show_mails: Die Anzahl in der Instanz Konfig ändern (auch als Blockly möglich)
                  • imap.0.xx.html: HTML Code für VIS
                  • imap.0.xx.last_activity: Letzte Aktivität (Aktualisierung/Neue Post)
                  • imap.0.xx.last_activity_json: Bsp.: {"flags": ["\Seen"]} für als gelesen markiert
                    oder {"flags": []} für neue Post.
                  • imap.0.xx.last_activity_timestamp: Letzte Aktivität als Timestamp
                  • imap.0.xx.online: Mit IMAP verbunden = true
                  • imap.0.xx.quality: Qualität der Datenpunkte (automatische Prüfung alle 24h)
                  • imap.0.xx.total: Anzahl aller Mails in deiner Inbox.
                  • imap.0.xx.remote.change_folder: Hier könnt ihr eure Folder auswählen. Es werden dann alle Daten mit dem Inhalt dieses Folder gefühlt (Mail01, json_table etc). Allerdings wird dann auch nur diese Auswahl überwacht.
                  • imap.0.xx.active_inbox: Zeigt euch welcher Folder aktiv ist und überwacht wird
                  • imap.0.xx.total_unread: Anzahl ungelesene Mails im aktiven Folder
                  • imap.0.xx.total: Anzahl aller Mails im aktiven Folder

                  Blocklys


                  bild4.png
                  Screenshot 2023-03-07 221651.png

                  Der kleine Blockly steuert die o. g. Datenpunkte um die Suche zu ändern.
                  Mit dem großen können eigene Anfragen erstellt werden und ihr erhaltet einen Array mit JSON Elemente. ACHTUNG! Es kommen echt viele Daten daher nicht immer mit "debug output" arbeiten. Was möglich ist könnt ihr hier nachlesen.
                  Habe diesen Adapter für mich und meine Berdürfnisse geschrieben. Nun könnt ihr gerne Wünsche aussern die ich hinzufügen soll.

                  Eine VIEW von @sigi234

                  Gmail login

                  outlook.office365.com 2Fach-Authentifizierung

                  Bekannte Issues

                  • Habe noch keine Idee die Mail Total zu aktualisieren - done
                  • Es wird auch ein Update durchgeführt, wenn Mails ausserhalb der max. liegen. Ihr habt max. 20 eingetragen und die Mail 22 wird als gelesen markiert, dann wird trotzdem ein Update gefahren. - done

                  Bitte den RAM Verbrauch kontrollieren. Bei 4 IMAP`s komme ich schon auf 120MB.

                  Viel Spaß beim testen und ich hoffe auch gute Ideen die man auch umsetzen kann 🙂

                  Gruß//Lucky

                  David G.D Online
                  David G.D Online
                  David G.
                  wrote on last edited by
                  #359

                  @lucky_esa

                  Klasse Adapter, hab ihn seit dem Testrelease stabil am laufen.
                  Jedoch nur sehr begrenzt, Betreff oder Nachricht triggert nur bestimmte Aktionen.

                  Nun würde ich gerne Nachrichten löschen (nicht nur zu gelöscht verschieben) können.
                  Geht das? Am liebsten über blockly und die id der Mail.

                  Zeigt eure Lovelace-Visualisierung klick
                  (Auch ideal um sich Anregungen zu holen)

                  Meine Tabellen für eure Visualisierung klick

                  L 2 Replies Last reply
                  0
                  • David G.D David G.

                    @lucky_esa

                    Klasse Adapter, hab ihn seit dem Testrelease stabil am laufen.
                    Jedoch nur sehr begrenzt, Betreff oder Nachricht triggert nur bestimmte Aktionen.

                    Nun würde ich gerne Nachrichten löschen (nicht nur zu gelöscht verschieben) können.
                    Geht das? Am liebsten über blockly und die id der Mail.

                    L Offline
                    L Offline
                    Lucky_ESA
                    Developer Most Active
                    wrote on last edited by
                    #360

                    @david-g

                    Nun würde ich gerne Nachrichten löschen (nicht nur zu gelöscht verschieben) können.
                    Geht das? Am liebsten über blockly und die id der Mail.

                    Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

                    Gruß//Lucky

                    David G.D 1 Reply Last reply
                    0
                    • David G.D David G.

                      @lucky_esa

                      Klasse Adapter, hab ihn seit dem Testrelease stabil am laufen.
                      Jedoch nur sehr begrenzt, Betreff oder Nachricht triggert nur bestimmte Aktionen.

                      Nun würde ich gerne Nachrichten löschen (nicht nur zu gelöscht verschieben) können.
                      Geht das? Am liebsten über blockly und die id der Mail.

                      L Offline
                      L Offline
                      Lucky_ESA
                      Developer Most Active
                      wrote on last edited by
                      #361

                      @david-g Muss meine Aussage zurückziehen. Man könnte per Adapter einen neuen Ordner erstellen, dann dort die gewünschten Mails hineinschieben und dann den Ordner löschen.

                      Wäre das OK?

                      Gruß//Lucky

                      David G.D 1 Reply Last reply
                      0
                      • L Lucky_ESA

                        @david-g Muss meine Aussage zurückziehen. Man könnte per Adapter einen neuen Ordner erstellen, dann dort die gewünschten Mails hineinschieben und dann den Ordner löschen.

                        Wäre das OK?

                        Gruß//Lucky

                        David G.D Online
                        David G.D Online
                        David G.
                        wrote on last edited by
                        #362

                        @lucky_esa

                        Wäre zumindest ein Workarround.
                        Mal schauen ob ich das im Blockly schaffe.

                        Ist das evtl eine Möglichkeit die Funktion "Mail löschen" in den Adapter einzubauen die im Hintergrund so arbeitet?

                        Zeigt eure Lovelace-Visualisierung klick
                        (Auch ideal um sich Anregungen zu holen)

                        Meine Tabellen für eure Visualisierung klick

                        L 1 Reply Last reply
                        0
                        • David G.D David G.

                          @lucky_esa

                          Wäre zumindest ein Workarround.
                          Mal schauen ob ich das im Blockly schaffe.

                          Ist das evtl eine Möglichkeit die Funktion "Mail löschen" in den Adapter einzubauen die im Hintergrund so arbeitet?

                          L Offline
                          L Offline
                          Lucky_ESA
                          Developer Most Active
                          wrote on last edited by
                          #363

                          @david-g Du kannst gerne mal von GIT laden.

                          Zum anlegen oder löschen muss ZWINGEND die inbox + delimiter voran setzen. Siehe Beispiel im Objekt imap.0.xxx.remote.change_folder

                              "states": {
                                "INBOX": "INBOX",
                                "INBOX.Spam": "INBOX.Spam",
                                "INBOX.Drafts": "INBOX.Drafts",
                                "INBOX.Sent": "INBOX.Sent",
                                "INBOX.Trash": "INBOX.Trash",
                              }
                          

                          <inbox><delimiter>Spam

                          Um den Ordner imap anzulegen muss ich also INBOX.imap eintragen.

                          Neuen Ordner anlegen:
                          .remote.mailbox_folder_create

                          Dann mit move die gewünschten Mails dort einfügen und damit wieder löschen.
                          .remote.mailbox_folder_delete

                          Gruß//Lucky

                          David G.D 1 Reply Last reply
                          1
                          • L Lucky_ESA

                            @david-g Du kannst gerne mal von GIT laden.

                            Zum anlegen oder löschen muss ZWINGEND die inbox + delimiter voran setzen. Siehe Beispiel im Objekt imap.0.xxx.remote.change_folder

                                "states": {
                                  "INBOX": "INBOX",
                                  "INBOX.Spam": "INBOX.Spam",
                                  "INBOX.Drafts": "INBOX.Drafts",
                                  "INBOX.Sent": "INBOX.Sent",
                                  "INBOX.Trash": "INBOX.Trash",
                                }
                            

                            <inbox><delimiter>Spam

                            Um den Ordner imap anzulegen muss ich also INBOX.imap eintragen.

                            Neuen Ordner anlegen:
                            .remote.mailbox_folder_create

                            Dann mit move die gewünschten Mails dort einfügen und damit wieder löschen.
                            .remote.mailbox_folder_delete

                            Gruß//Lucky

                            David G.D Online
                            David G.D Online
                            David G.
                            wrote on last edited by
                            #364

                            @lucky_esa

                            Cool,
                            das klappt wunderbar.
                            Ich habe ein Postfach was als "trigger" für manche Scripte dient von Geräten die Mails senden können und keine http Befehle senden können.
                            Jetzt kann man den Kram direkt löschen.

                            Zeigt eure Lovelace-Visualisierung klick
                            (Auch ideal um sich Anregungen zu holen)

                            Meine Tabellen für eure Visualisierung klick

                            1 Reply Last reply
                            0
                            • L Lucky_ESA

                              @david-g

                              Nun würde ich gerne Nachrichten löschen (nicht nur zu gelöscht verschieben) können.
                              Geht das? Am liebsten über blockly und die id der Mail.

                              Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

                              Gruß//Lucky

                              David G.D Online
                              David G.D Online
                              David G.
                              wrote on last edited by
                              #365

                              @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

                              Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

                              Ich habe eben folgendes gelesen im Bezug auf imap:

                              1. Sie löschen eine E-Mail → Die E-Mail wird in den Papierkorb verschoben.
                              
                              
                              2. Sie leeren den Papierkorb → Die E-Mail wird als gelöscht markiert (\Deleted).
                              
                              
                              3. Der Mail-Client führt den Expunge-Befehl aus → Die E-Mail wird endgültig vom Server entfernt.
                              
                              
                              
                              Unterschiedliche Implementierungen
                              
                              Einige Mail-Clients wie Gmail nutzen eine spezielle Implementierung: Hier wird das Verschieben in den Papierkorb direkt als Löschaktion betrachtet. Wird der Papierkorb geleert, ist die E-Mail sofort weg.
                              
                              
                              Das Löschen von E-Mails im Papierkorb funktioniert, weil der Mail-Client in der Regel den Expunge-Befehl ausführt. Ohne diesen Befehl bliebe die E-Mail technisch noch vorhanden, wäre aber als gelöscht markiert und für den Benutzer unsichtbar.
                              

                              Kann man diesen "Expunge-Befehl" nicht irgewie ausführen?
                              Evtl wäre das eine sauberer Lösung.

                              Zeigt eure Lovelace-Visualisierung klick
                              (Auch ideal um sich Anregungen zu holen)

                              Meine Tabellen für eure Visualisierung klick

                              L 1 Reply Last reply
                              0
                              • David G.D David G.

                                @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

                                Es tut mir Leid aber über imap kann man keine Mails löschen. Du kannst diese nur in den Mülleimer verschieben.

                                Ich habe eben folgendes gelesen im Bezug auf imap:

                                1. Sie löschen eine E-Mail → Die E-Mail wird in den Papierkorb verschoben.
                                
                                
                                2. Sie leeren den Papierkorb → Die E-Mail wird als gelöscht markiert (\Deleted).
                                
                                
                                3. Der Mail-Client führt den Expunge-Befehl aus → Die E-Mail wird endgültig vom Server entfernt.
                                
                                
                                
                                Unterschiedliche Implementierungen
                                
                                Einige Mail-Clients wie Gmail nutzen eine spezielle Implementierung: Hier wird das Verschieben in den Papierkorb direkt als Löschaktion betrachtet. Wird der Papierkorb geleert, ist die E-Mail sofort weg.
                                
                                
                                Das Löschen von E-Mails im Papierkorb funktioniert, weil der Mail-Client in der Regel den Expunge-Befehl ausführt. Ohne diesen Befehl bliebe die E-Mail technisch noch vorhanden, wäre aber als gelöscht markiert und für den Benutzer unsichtbar.
                                

                                Kann man diesen "Expunge-Befehl" nicht irgewie ausführen?
                                Evtl wäre das eine sauberer Lösung.

                                L Offline
                                L Offline
                                Lucky_ESA
                                Developer Most Active
                                wrote on last edited by
                                #366

                                @david-g Du kannst die Mails direkt in den Papierkorb verschieben
                                [Google Mail]/Papierkorb

                                Vorher noch den Flag Delete mit imap.0.xxx_gmail_com.remote.flag setzen

                                Gruß//Lucky

                                David G.D 1 Reply Last reply
                                0
                                • L Lucky_ESA

                                  @david-g Du kannst die Mails direkt in den Papierkorb verschieben
                                  [Google Mail]/Papierkorb

                                  Vorher noch den Flag Delete mit imap.0.xxx_gmail_com.remote.flag setzen

                                  Gruß//Lucky

                                  David G.D Online
                                  David G.D Online
                                  David G.
                                  wrote on last edited by
                                  #367

                                  @lucky_esa

                                  Der Weg wäre doch dann viel "simpler" als das mit dem Ordner anlegen und diesen wieder zu löschen oder?

                                  Wenn er auf diesem Weg auch die Mail löscht.

                                  P. S.
                                  Muss das verschieben nach dem Flaf noch sein? Wenn ich Deleted setze finde ich die Mail mit keinem Mailclient wieder.

                                  Zeigt eure Lovelace-Visualisierung klick
                                  (Auch ideal um sich Anregungen zu holen)

                                  Meine Tabellen für eure Visualisierung klick

                                  L 1 Reply Last reply
                                  0
                                  • David G.D David G.

                                    @lucky_esa

                                    Der Weg wäre doch dann viel "simpler" als das mit dem Ordner anlegen und diesen wieder zu löschen oder?

                                    Wenn er auf diesem Weg auch die Mail löscht.

                                    P. S.
                                    Muss das verschieben nach dem Flaf noch sein? Wenn ich Deleted setze finde ich die Mail mit keinem Mailclient wieder.

                                    L Offline
                                    L Offline
                                    Lucky_ESA
                                    Developer Most Active
                                    wrote on last edited by
                                    #368

                                    @david-g

                                    Muss das verschieben nach dem Flaf noch sein? Wenn ich Deleted setze finde ich die Mail mit keinem Mailclient wieder.

                                    Wenn die Mail weg ist dann funktioniert das löschen wohl so.

                                    Gruß//Lucky

                                    1 Reply Last reply
                                    0
                                    • L Lucky_ESA

                                      @bahnuhr Das sollte funktionieren.

                                      
                                      
                                       
                                      
                                      // Datei vom Anrufbeantworter speichern und per telegram senden
                                      
                                       
                                      
                                      function weiter() {
                                      
                                       
                                      
                                      // Variablen
                                      
                                          var i, result, j, json, fs = require('fs'), vText = "", vUser = "Dieter";
                                      
                                          var uid = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.uid").val;
                                      
                                          var subject = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.subject").val;
                                      
                                          var text = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.text").val;
                                      
                                       
                                      
                                      // Script
                                      
                                          if (text.indexOf("Anrufbeantworter") > - 1) {           // Anrufbeantworter ist im Text enthalten
                                      
                                              // Variablen
                                      
                                                  var Anruf_von = text.substring(text.indexOf("Der Anrufer:") + 13, text.indexOf("hat für Sie") - 1)
                                      
                                                  var Datum = text.substring(text.indexOf("Datum:") + 7, text.indexOf("Uhrzeit") - 1)
                                      
                                                  var Uhrzeit = text.substring(text.indexOf("Uhrzeit:") + 9, text.indexOf("Aufnahme") - 1)
                                      
                                                  var Laenge = text.substring(text.indexOf("Aufnahme") + 15, text.indexOf("Die Weiter") - 2) + " (min/sek)"
                                      
                                              // Datei speichern
                                      
                                                  sendTo("imap.0", "getIMAPRequest", { name: "ppc@dbrp-mueller.de", max: 20, search: '["ALL"]',
                                      
                                                      fetch:  JSON.parse('{"fetch": true, "uid": [' + uid + ']}'), bodie: '{bodies: "", markSeen: false}', parse: true,
                                      
                                                  }, async function (result) { if (!result) { log("No result found!"); return; }
                                      
                                                  for (var i_index in result) { i = result[i_index]; var j_list = getAttr(i, 'body.attachments');
                                      
                                                  for (var j_index in j_list) { j = j_list[j_index]; json = Buffer.from(getAttr(j, 'content'));;
                                      
                                                  //log(getAttr(j, 'filename'));
                                      
                                                  writeFile('vis.0', '/Anrufe/'+ getAttr(j,'filename'), json, function (error) {
                                      
                                                      if(error) { log('Fehler beim Speichern von Datei ' + getAttr(json, 'filename') +'   Fehler:' + error, 'warn');
                                      
                                                      } else { log('Datei: ' + getAttr(j, 'filename') +' wurde gespeichert'); }
                                      
                                                  });
                                      
                                                  // Datei kopieren mit anderem Filenamen
                                      
                                                      setTimeout(function() { Datei_kopieren("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/" + getAttr(j, 'filename'), "/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav"); }, 3000);
                                      
                                                  // Datei wieder löschen    
                                      
                                                  setTimeout(function() {
                                      
                                                      fs.unlink("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/" + getAttr(j, 'filename'), function (err) { if (err) throw err;
                                      
                                                          log('Datei: ' + getAttr(j, 'filename') + ' wurde gelöscht.'); });
                                      
                                                      fs.unlink("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav", function (err) { if (err) throw err;
                                      
                                                          log('Datei: Anrufbeantworter.wav wurde gelöscht.'); });
                                      
                                                  }, 10000);
                                      
                                                  // Datei per telegram versenden
                                      
                                                      setTimeout(function() {
                                      
                                                          vText = "Anruf von: " + Anruf_von + "\nDatum: " + Datum + "\nUhrzeit: " + Uhrzeit + "\nAufnahme: " + Laenge;
                                      
                                                          log (vText);
                                      
                                                          //vText = "test";
                                      
                                                          sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav', caption: vText});
                                      
                                                      }, 5000);
                                      
                                                  } } });
                                      
                                          } else {
                                      
                                              log ("Anrufbeantworter ist im Text nicht enthalten; Script wird abgebrochen.");
                                      
                                          }
                                      
                                      }
                                      
                                       
                                      
                                      on({id: "imap.0.ppc_dbrp-mueller_de.email.email_01.uid", change: "ne"}, function(obj) {     // uid von Email 1 hat sich geändert
                                      
                                          log("Auslöser Email imap hat sich geändert; UID= " + obj.state.val);
                                      
                                          weiter();
                                      
                                      }); 
                                      
                                       
                                      
                                      weiter();
                                      
                                       
                                      
                                      
                                      falke69F Offline
                                      falke69F Offline
                                      falke69
                                      wrote on last edited by
                                      #369

                                      @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

                                      Datei_kopieren

                                      Hallo @lucky_esa könntest Du mir vielleicht mit dem Script weiterhelfen.

                                      Der Anhang wird anstandslos im entsprechenden Verzeichnis gespeichert.
                                      Die Datei, wird aber weder umbenannt, noch kann diese gelöscht werden.
                                      Per Telegram bekomme ich auch nur den Pfad zur Datei (/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav)

                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	at process.processTimers (node:internal/timers:519:7)
                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	at listOnTimeout (node:internal/timers:581:17)
                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34)
                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	at Object.<anonymous> (script.js.Test.Skript_1:66:20)
                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	at ProtectFs.unlink (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:78:9)
                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	at checkProtected (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:21:19)
                                      javascript.0
                                      	2025-01-10 18:07:35.354	error	Error in callback: Error: Permission denied
                                      javascript.0
                                      	2025-01-10 18:07:35.353	error	May not read /opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/10.01.25_14.49_Anruf.XXXXXXXXX.wav - use writeFile instead
                                      javascript.0
                                      	2025-01-10 18:07:28.354	error	at process.processTimers (node:internal/timers:519:7)
                                      javascript.0
                                      	2025-01-10 18:07:28.354	error	at listOnTimeout (node:internal/timers:581:17)
                                      javascript.0
                                      	2025-01-10 18:07:28.354	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34)
                                      javascript.0
                                      	2025-01-10 18:07:28.354	error	at Object.<anonymous> (script.js.Test.Skript_1:60:41)
                                      javascript.0
                                      	2025-01-10 18:07:28.354	error	Error in callback: ReferenceError: Datei_kopieren is not defined
                                      

                                      Ich vermute, dass sich der eine oder andere Befehl geändert hat.
                                      Ein Blockly wäre mir eigentlich am liebsten. Leider fehlt mir der Ansatz dazu.

                                      Vielen Dank

                                      L 1 Reply Last reply
                                      0
                                      • falke69F falke69

                                        @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

                                        Datei_kopieren

                                        Hallo @lucky_esa könntest Du mir vielleicht mit dem Script weiterhelfen.

                                        Der Anhang wird anstandslos im entsprechenden Verzeichnis gespeichert.
                                        Die Datei, wird aber weder umbenannt, noch kann diese gelöscht werden.
                                        Per Telegram bekomme ich auch nur den Pfad zur Datei (/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav)

                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	at process.processTimers (node:internal/timers:519:7)
                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	at listOnTimeout (node:internal/timers:581:17)
                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34)
                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	at Object.<anonymous> (script.js.Test.Skript_1:66:20)
                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	at ProtectFs.unlink (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:78:9)
                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	at checkProtected (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:21:19)
                                        javascript.0
                                        	2025-01-10 18:07:35.354	error	Error in callback: Error: Permission denied
                                        javascript.0
                                        	2025-01-10 18:07:35.353	error	May not read /opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/10.01.25_14.49_Anruf.XXXXXXXXX.wav - use writeFile instead
                                        javascript.0
                                        	2025-01-10 18:07:28.354	error	at process.processTimers (node:internal/timers:519:7)
                                        javascript.0
                                        	2025-01-10 18:07:28.354	error	at listOnTimeout (node:internal/timers:581:17)
                                        javascript.0
                                        	2025-01-10 18:07:28.354	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34)
                                        javascript.0
                                        	2025-01-10 18:07:28.354	error	at Object.<anonymous> (script.js.Test.Skript_1:60:41)
                                        javascript.0
                                        	2025-01-10 18:07:28.354	error	Error in callback: ReferenceError: Datei_kopieren is not defined
                                        

                                        Ich vermute, dass sich der eine oder andere Befehl geändert hat.
                                        Ein Blockly wäre mir eigentlich am liebsten. Leider fehlt mir der Ansatz dazu.

                                        Vielen Dank

                                        L Offline
                                        L Offline
                                        Lucky_ESA
                                        Developer Most Active
                                        wrote on last edited by
                                        #370

                                        @falke69 Schau bitte mal hier
                                        Reicht dir das? Wenn nein, dann zeig mal dein Blockly oder Javascript.

                                        Gruß//Lucky

                                        1 Reply Last reply
                                        0
                                        • L Lucky_ESA

                                          @bahnuhr Leider hatte ich noch 2 Fehler. Bitte neu vom GIT laden. Sorry für die Umstände aber ich bekomme den Adapter nicht in latest da apollo77 keine Zeit hat.

                                          Versuche dann mal dieses Blockly zu importieren.

                                          anhang.txt


                                          anhang2.png
                                          anhang_1.png

                                          seqno ist bei einigen richtig wobei ich hier die uid nehmen musste.

                                          anhang_2.png

                                          Gruß//Lucky

                                          falke69F Offline
                                          falke69F Offline
                                          falke69
                                          wrote on last edited by falke69
                                          #371

                                          @lucky_esa sagte in Test Adapter ioBroker.imap latest/stable:

                                          @bahnuhr Leider hatte ich noch 2 Fehler. Bitte neu vom GIT laden. Sorry für die Umstände aber ich bekomme den Adapter nicht in latest da apollo77 keine Zeit hat.

                                          Versuche dann mal dieses Blockly zu importieren.

                                          anhang.txt


                                          anhang2.png
                                          anhang_1.png

                                          seqno ist bei einigen richtig wobei ich hier die uid nehmen musste.

                                          anhang_2.png

                                          Gruß//Lucky

                                          Das hier ist das Blockly, was ich hier gefunden habe.
                                          Das Spuckt mir aber immer eine Fehlermeldung aus.

                                          javascript.0
                                          	2025-01-11 06:33:16.859	error	script.js.Test.AB: Cannot parse "timeout": SyntaxError: Unexpected token 'i', "timeout" is not valid JSON
                                          imap.0
                                          	2025-01-11 06:32:56.860	error	Fehlende Fetch meine_mailadresse_de
                                          

                                          Habe gedacht, das ich mir damit den Mailanhang per Telegram schicken kann.

                                          Dann habe ich das Javascript von Dir gefunden:

                                          
                                           
                                          // Datei vom Anrufbeantworter speichern und per telegram senden
                                           
                                          function weiter() {
                                           
                                          // Variablen
                                              var i, result, j, json, fs = require('fs'), vText = "", vUser = "Dieter";
                                              var uid = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.uid").val;
                                              var subject = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.subject").val;
                                              var text = getState("imap.0.ppc_dbrp-mueller_de.email.email_01.text").val;
                                           
                                          // Script
                                              if (text.indexOf("Anrufbeantworter") > - 1) {           // Anrufbeantworter ist im Text enthalten
                                                  // Variablen
                                                      var Anruf_von = text.substring(text.indexOf("Der Anrufer:") + 13, text.indexOf("hat für Sie") - 1)
                                                      var Datum = text.substring(text.indexOf("Datum:") + 7, text.indexOf("Uhrzeit") - 1)
                                                      var Uhrzeit = text.substring(text.indexOf("Uhrzeit:") + 9, text.indexOf("Aufnahme") - 1)
                                                      var Laenge = text.substring(text.indexOf("Aufnahme") + 15, text.indexOf("Die Weiter") - 2) + " (min/sek)"
                                                  // Datei speichern
                                                      sendTo("imap.0", "getIMAPRequest", { name: "ppc@dbrp-mueller.de", max: 20, search: '["ALL"]',
                                                          fetch:  JSON.parse('{"fetch": true, "uid": [' + uid + ']}'), bodie: '{bodies: "", markSeen: false}', parse: true,
                                                      }, async function (result) { if (!result) { log("No result found!"); return; }
                                                      for (var i_index in result) { i = result[i_index]; var j_list = getAttr(i, 'body.attachments');
                                                      for (var j_index in j_list) { j = j_list[j_index]; json = JSON.stringify(getAttr(j, 'content'));
                                                      //log(getAttr(j, 'filename'));
                                                      writeFile('vis.0', '/Anrufe/'+ getAttr(j,'filename'), JSON.stringify(getAttr(json, 'data')), function (error) {
                                                          if(error) { log('Fehler beim Speichern von Datei ' + getAttr(json, 'filename') +'   Fehler:' + error, 'warn');
                                                          } else { log('Datei: ' + getAttr(j, 'filename') +' wurde gespeichert'); }
                                                      });
                                                      // Datei kopieren mit anderem Filenamen
                                                          setTimeout(function() { Datei_kopieren("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/" + getAttr(j, 'filename'), "/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav"); }, 3000);
                                                      // Datei wieder löschen    
                                                      setTimeout(function() {
                                                          fs.unlink("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/" + getAttr(j, 'filename'), function (err) { if (err) throw err;
                                                              log('Datei: ' + getAttr(j, 'filename') + ' wurde gelöscht.'); });
                                                          fs.unlink("/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav", function (err) { if (err) throw err;
                                                              log('Datei: Anrufbeantworter.wav wurde gelöscht.'); });
                                                      }, 10000);
                                                      // Datei per telegram versenden
                                                          setTimeout(function() {
                                                              vText = "Anruf von: " + Anruf_von + "\nDatum: " + Datum + "\nUhrzeit: " + Uhrzeit + "\nAufnahme: " + Laenge;
                                                              log (vText);
                                                              //vText = "test";
                                                              sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/files/vis.0/Anrufe/Anrufbeantworter.wav', caption: vText});
                                                          }, 5000);
                                                      } } });
                                              } else {
                                                  log ("Anrufbeantworter ist im Text nicht enthalten; Script wird abgebrochen.");
                                              }
                                          }
                                           
                                          on({id: "imap.0.ppc_dbrp-mueller_de.email.email_01.uid", change: "ne"}, function(obj) {     // uid von Email 1 hat sich geändert
                                              log("Auslöser Email imap hat sich geändert; UID= " + obj.state.val);
                                              weiter();
                                          }); 
                                           
                                          weiter();
                                           
                                          
                                          

                                          Hier habe ich eigentlich nur den Speicherpfad angepasst (auch mit dem originalen kommt diese Fehlermeldung)

                                          // Datei vom Anrufbeantworter speichern und per telegram senden
                                          
                                           
                                          
                                          function weiter() {
                                          
                                           
                                          
                                          // Variablen
                                          
                                              var i, result, j, json, fs = require('fs'), vText = "", vUser = "Telegramuser";
                                          
                                              var uid = getState("imap.0.meine_mail_de.email.email_01.uid").val;
                                          
                                              var subject = getState("imap.0.meine_mail_de.email.email_01.subject").val;
                                          
                                              var text = getState("imap.0.meine_mail_de.email.email_01.text").val;
                                          
                                           
                                          
                                          // Script
                                          
                                              if (text.indexOf("Anrufbeantworter") > - 1) {           // Anrufbeantworter ist im Text enthalten
                                          
                                                  // Variablen
                                          
                                                      var Anruf_von = text.substring(text.indexOf("Der Anrufer:") + 13, text.indexOf("hat für Sie") - 1)
                                          
                                                      var Datum = text.substring(text.indexOf("Datum:") + 7, text.indexOf("Uhrzeit") - 1)
                                          
                                                      var Uhrzeit = text.substring(text.indexOf("Uhrzeit:") + 9, text.indexOf("Aufnahme") - 1)
                                          
                                                      var Laenge = text.substring(text.indexOf("Aufnahme") + 15, text.indexOf("Die Weiter") - 2) + " (min/sek)"
                                          
                                                  // Datei speichern
                                          
                                                      sendTo("imap.0", "getIMAPRequest", { name: "meine@mail.de", max: 20, search: '["ALL"]',
                                          
                                                          fetch:  JSON.parse('{"fetch": true, "uid": [' + uid + ']}'), bodie: '{bodies: "", markSeen: false}', parse: true,
                                          
                                                      }, async function (result) { if (!result) { log("No result found!"); return; }
                                          
                                                      for (var i_index in result) { i = result[i_index]; var j_list = getAttr(i, 'body.attachments');
                                          
                                                      for (var j_index in j_list) { j = j_list[j_index]; json = Buffer.from(getAttr(j, 'content'));;
                                          
                                                      //log(getAttr(j, 'filename'));
                                          
                                                      writeFile('0_userdata.0', '/Anrufe/'+ getAttr(j,'filename'), json, function (error) {
                                          
                                                          if(error) { log('Fehler beim Speichern von Datei ' + getAttr(json, 'filename') +'   Fehler:' + error, 'warn');
                                          
                                                          } else { log('Datei: ' + getAttr(j, 'filename') +' wurde gespeichert'); }
                                          
                                                      });
                                          
                                                      // Datei kopieren mit anderem Filenamen
                                          
                                                           setTimeout(function() {Datei_kopieren ("/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/" + getAttr(j, 'filename'), "/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav"); }, 3000);
                                          
                                                      // Datei wieder löschen    
                                          
                                                       setTimeout(function() {
                                          
                                                          fs.unlink ("/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/" + getAttr(j, 'filename'), function (err) { if (err) throw err;
                                          
                                                                log('Datei: ' + getAttr(j, 'filename') + ' wurde gelöscht.'); });
                                          
                                                   //        fs.unlink("/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufbeantworter.wav", function (err) { if (err) throw err;
                                          
                                                    //          log('Datei: Anrufbeantworter.wav wurde gelöscht.'); });
                                          
                                                       }, 10000);
                                          
                                                      // Datei per telegram versenden
                                          
                                                      //     setTimeout(function() {
                                          
                                                      //         vText = "Anruf von: " + Anruf_von + "\nDatum: " + Datum + "\nUhrzeit: " + Uhrzeit + "\nAufnahme: " + Laenge;
                                          
                                                      //        log (vText);
                                          
                                                              //vText = "test";
                                                     //         sendTo('telegram.0', {user: vUser, text: '/opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/Anrufe/Anrufbeantworter.wav', caption: vText});
                                          
                                                     //     }, 5000);
                                          
                                                      } } });
                                          
                                              } else {
                                          
                                                  log ("Anrufbeantworter ist im Text nicht enthalten; Script wird abgebrochen.");
                                          
                                              }
                                          
                                          }
                                          
                                           
                                          
                                          on({id: "imap.0.meine_mail_de.email.email_01.uid", change: "ne"}, function(obj) {     // uid von Email 1 hat sich geändert
                                          
                                              log("Auslöser Email imap hat sich geändert; UID= " + obj.state.val);
                                          
                                              weiter();
                                          
                                          }); 
                                          
                                           
                                          
                                          weiter();
                                          
                                           
                                          

                                          das spuckt mir aber die Fehlermeldungen aus:

                                          
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	at process.processTimers (node:internal/timers:519:7)
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	at listOnTimeout (node:internal/timers:581:17)
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34)
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	at Object.<anonymous> (script.js.Test.Skript_1:66:20)
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	at ProtectFs.unlink (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:78:9)
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	at checkProtected (/opt/iobroker/node_modules/iobroker.javascript/lib/protectFs.js:21:19)
                                          javascript.0
                                          	2025-01-10 18:07:35.354	error	Error in callback: Error: Permission denied
                                          javascript.0
                                          	2025-01-10 18:07:35.353	error	May not read /opt/iobroker/iobroker-data/files/0_userdata.0/Anrufe/10.01.25_14.49_Anruf.XXXXXXXXX.wav - use writeFile instead
                                          javascript.0
                                          	2025-01-10 18:07:28.354	error	at process.processTimers (node:internal/timers:519:7)
                                          javascript.0
                                          	2025-01-10 18:07:28.354	error	at listOnTimeout (node:internal/timers:581:17)
                                          javascript.0
                                          	2025-01-10 18:07:28.354	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34)
                                          javascript.0
                                          	2025-01-10 18:07:28.354	error	at Object.<anonymous> (script.js.Test.Skript_1:60:41)
                                          javascript.0
                                          	2025-01-10 18:07:28.354	error	Error in callback: ReferenceError: Datei_kopieren is not defined
                                          
                                          

                                          In den Script habe ich halt nur die vorhandenen Einstellungen an meine eigenen angepasst.
                                          Seit AVM irgendetwas am Codec der Aufnahmedatei geändert hat, kann ich diese nicht mehr mit Spexx in ein wav konvertieren und suche jetzt halt nach einer Alternative, die funktioniert.

                                          L 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          622

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe