Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Email filtern

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    900

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Email filtern

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
6 Beiträge 2 Kommentatoren 1.3k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H Offline
    H Offline
    Heilu
    schrieb am zuletzt editiert von
    #1

    Hallo,

    da ich nicht so der Programmierer bin, stehe ich nun vor einem Problem. Ich habe mit node-red eine email ausgewertet und diese in einem Datenpunkt gesetzt.

    Jetzt möchte ich einen bestimmten Teil aus dem Text der Mail "ausschneiden" und in einen weiteren Datenpunkt verarbeiten. Z.B. eine Adresse. Da Name und Strasse immer anders lauten, komme ich da nicht weiter. Mit Blockly ist das Textfiltern sehr begrenzt. Was immer gleich ist in der Mail, die Adresse beginnt mit einem Punkt und endet mit einem Punkt. Würde z.B. so aussehen: "Name.Adresse.weiterer Text".

    Angedacht ist das dann irgendwann in einer Karte darzustellen.

    Hat da einer eine Idee, wie ich das umsetzen könnte?

    Für eure Hilfe wäre ich euch sehr dankbar.

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      pix
      schrieb am zuletzt editiert von
      #2

      Hallo,

      der Javascript Befehl der Wahl ist split https://www.w3schools.com/jsref/jsref_split.asp

      var adresse_array = mailinhalt.split(".");
      

      adresse_array sieht dann so aus:

      ["Name","Adresse","weiterer Text"]
      

      Gruß

      Pix

      ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

      1 Antwort Letzte Antwort
      0
      • H Offline
        H Offline
        Heilu
        schrieb am zuletzt editiert von
        #3

        Es scheint also eine Lösung für mein Problem zu geben. :)

        Da ich aber vom Programmieren null Ahnung habe, könntest du mir da vielleicht noch auf die Sprünge helfen, wie ich das jetzt schreiben muss?

        Mein Mailtext liegt in javascript.0.Adresse.Text und soll in javascript.0.Adresse.Anschrift oder in je einen Datenpunkt Name, Anschrift, Text.

        Wie würde da das Script aussehen? :roll:

        Wie schon geschrieben, bastel ich sonst eher mit blockly.

        Bis dahin schon mal Danke für die schnelle Hilfe

        1 Antwort Letzte Antwort
        0
        • P Offline
          P Offline
          pix
          schrieb am zuletzt editiert von
          #4

          Hallo,

          hier das Skript. Es legt drei Datenpunkte an, durchsucht dann bei Änderung deines vorhandenen Datenpuktes dessen Inhalt auf Punkte (".") und speichert,w as zwischen den Punkten steht in einem Array. Dann werden aus dem Array die neuen Datenpunkte befüllt.

          Problem/Falle/Achtung: Wie beschrieben, wird nach Punkten gesucht. Wenn du also Namen oder Straßen mit Punkten schreibst, wird das Ergebnis falsch sein (aus "Herbert Mustermann.Hauptstr. 30 98765 Musterstadt.Traumkunde" wird dann Name="Herbert Mustermann";Adresse="Hauptstr";Notiz=" 30 98765 Musterstadt"). Überlegt dir also ein anderes Trennzeichen für die Quelle. Ich empfehle ein Semikolon.

          ! ````
          /* Adresse aus Email filtern
          ! http://forum.iobroker.net/viewtopic.php?f=21&t=7516&sid=f57306f471525589c4029055b0c5bce7#p78424
          ! 05.08.2017 erstellt von pix für Heilu
          ! */
          ! const fC = false; // Wenn true, werden Datenpunkte beim Skriptstart NEU angelegt (überschrieben)
          ! const idName = 'javascript.' + instance + '.Adresse.Name';
          const idAnschrift = 'javascript.' + instance + '.Adresse.Anschrift';
          const idNotiz = 'javascript.' + instance + '.Adresse.Notiz';
          ! const idQuelle = 'javascript.0.Adresse.Text';
          ! // Objekte anlegen
          createState(idName, '', fC, {
          name: 'Name',
          desc: 'Name aus der Email',
          type: 'string',
          def: '',
          role: 'text'
          });
          ! createState(idAnschrift, '', fC, {
          name: 'Anschrift',
          desc: 'Anschrift aus der Email',
          type: 'string',
          def: '',
          role: 'text'
          });
          ! createState(idNotiz, '', fC, {
          name: 'Text',
          desc: 'Weitere Notiz aus der Email',
          type: 'string',
          def: '',
          role: 'text'
          });
          ! // auf Änderung der Quelle reagieren
          on(idQuelle, function(data) {
          var quelle = data.state.val;
          var quelle_array = quelle.split("."); // ["Name","Adresse","weiterer Text"]

          setState(idName, quelle_array[0]);
          setState(idAnschrift, quelle_array[1]);
          setState(idNotiz, quelle_array[2]);
          log('Email mit neuer Adresse verarbeitet');
          

          });

          ! ````

          Gruß

          Pix

          ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

          1 Antwort Letzte Antwort
          0
          • H Offline
            H Offline
            Heilu
            schrieb am zuletzt editiert von
            #5

            Ok, vielen Dank. Werde das mal in den nächsten Tagen ausprobieren.

            1 Antwort Letzte Antwort
            0
            • H Offline
              H Offline
              Heilu
              schrieb am zuletzt editiert von
              #6

              Funktioniert, vielen Dank

              1 Antwort Letzte Antwort
              0
              Antworten
              • In einem neuen Thema antworten
              Anmelden zum Antworten
              • Älteste zuerst
              • Neuste zuerst
              • Meiste Stimmen


              Support us

              ioBroker
              Community Adapters
              Donate

              627

              Online

              32.6k

              Benutzer

              82.2k

              Themen

              1.3m

              Beiträge
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
              ioBroker Community 2014-2025
              logo
              • Anmelden

              • Du hast noch kein Konto? Registrieren

              • Anmelden oder registrieren, um zu suchen
              • Erster Beitrag
                Letzter Beitrag
              0
              • Home
              • Aktuell
              • Tags
              • Ungelesen 0
              • Kategorien
              • Unreplied
              • Beliebt
              • GitHub
              • Docu
              • Hilfe