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. Newbie Wert aus Datei in einen neuen Datenpunkt schreiben.

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Newbie Wert aus Datei in einen neuen Datenpunkt schreiben.

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 2 Kommentatoren 2.5k 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.
  • J Offline
    J Offline
    Jautze
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich habe eine Datei auf /temp/a.txt liegen in der steht ein Wert drin. Z.B.

    21.5

    Diese Zahl möchte ich in einen neuen Datenpunkt schreiben ich weiß aber nicht wie.

    Probiert habe ich schon das (und das das auskommentiert ist):

    ! ````
    var x;
    ! /**

    • Beschreibe diese Funktion …
      /
      function JS_Funktion_mit_Ergebnis(x) {
      /

      function PoolTemp_Schreiben ()
      {
      var PoolTemp = "cat /tmp/a.txt";
      console.log('PoolTempState = ' + PoolTemp);
      setState('PoolTempState', parseInt(PoolTemp));
      //}
      //return 0
      /
      schedule("
      * * * * *", function () {
      setState("PoolTempState"/Wohnzimmer-Chromecast.status.volume/, PoolTemp);
      //setState("chromecast.0.Wohnzimmer-Chromecast.status.volume"/Wohnzimmer-Chromecast.status.volume/, 10);
      });
      return 0;

    ! }
    ! ````

    Wer kann mir helfen?

    Danke und viele Grüße

    Marcel Jaud

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      Dafür ist https://github.com/ioBroker/ioBroker.javascript#readfile gedacht.

      var fn = '/temp/a.txt';
      var idPooltemp = 'PoolTempState';
      
      function getPooltemp() {
          readFile(fn, function (error, data) {
              if(error) log('Fehler beim Lesen von ' + fn, 'error');
              else setState(idPooltemp, parseFloat(data));
          });
      }
      
      schedule('*/1 * * * *', getPooltemp);  // Jede Minute
      
      

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • J Offline
        J Offline
        Jautze
        schrieb am zuletzt editiert von
        #3

        Hi,

        Danke.

        Da kommt aber:

        19:21:51.023 [info] javascript.0 Stop script script.js.common.Pool_Temp

        19:21:51.059 [info] javascript.0 Start javascript script.js.common.Pool_Temp

        19:21:51.060 [info] javascript.0 script.js.common.Pool_Temp: registered 0 subscriptions and 1 schedule

        19:22:00.064 [error] javascript.0 script.js.common.Pool_Temp: Fehler beim Lesen von /tmp/a.txt

        19:23:00.067 [error] javascript.0 script.js.common.Pool_Temp: Fehler beim Lesen von /tmp/a.txt

        19:24:00.065 [error] javascript.0 script.js.common.Pool_Temp: Fehler beim Lesen von /tmp/a.txt

        da ist sie aber:

        pi@raspberrypi:~ $ ls /tmp/a.txt

        /tmp/a.txt

        Und wohin wird dann der Wert geschrieben? Ich will den dann in vis benutzen.

        Danke und viele Grüße

        Marcel

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          Kommentiere mal die Zeile mit if(error) aus und lösche das else.
          @Jautze:

          Und wohin wird dann der Wert geschrieben? `
          In den Datenpunkt mit der ID 'javascript.0.PoolTempState' vom Typ 'number' (Zahl), der vorher im Reiter Objekte erzeugt werden muss (http://www.iobroker.net/docu/?page_id=5495&lang=de#6hinzufuegen).

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #5

            Falls das nicht funktioniert, gibt es noch diese Variante:

            var fs = require('fs');
            var fn = '/tmp/a.txt';
            var idPooltemp = 'PoolTempState';
            
            function getPooltemp() {
                fs.readFile(fn, 'utf8',  function(error, data) {
                    if(error) log('Fehler beim Lesen von ' + fn, 'error');
                    else setState(idPooltemp, parseFloat(data));
                });
            }
            
            schedule('*/1 * * * *', getPooltemp);  // Jede Minute
            

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            1 Antwort Letzte Antwort
            1
            • J Offline
              J Offline
              Jautze
              schrieb am zuletzt editiert von
              #6

              Hi,

              geht leider immer noch nicht.

              19:59:42.350 [info] javascript.0 Start javascript script.js.common.Pool_Temp

              19:59:42.351 [info] javascript.0 script.js.common.Pool_Temp: schedule(cron=*/1 * * * *)

              19:59:42.351 [info] javascript.0 script.js.common.Pool_Temp: registered 0 subscriptions and 1 schedule

              20:00:00.345 [info] javascript.0 script.js.common.Pool_Temp: readFile(adapter=null, fileName=/tmp/a.txt)

              20:00:00.351 [info] javascript.0 script.js.common.Pool_Temp: setForeignState(id=javascript.0.PoolTempState, state=null)

              20:00:00.352 [warn] javascript.0 script.js.common.Pool_Temp: setForeignState(id=javascript.0.PoolTempState, state=null) - was not executed, while debug mode is active

              20:01:00.346 [info] javascript.0 script.js.common.Pool_Temp: readFile(adapter=null, fileName=/tmp/a.txt)

              20:01:00.350 [info] javascript.0 script.js.common.Pool_Temp: setForeignState(id=javascript.0.PoolTempState, state=null)

              20:01:00.352 [warn] javascript.0 script.js.common.Pool_Temp: setForeignState(id=javascript.0.PoolTempState, state=null) - was not executed, while debug mode is active

              Danke und viele Grüße

              Marcel Jaud

              1 Antwort Letzte Antwort
              0
              • J Offline
                J Offline
                Jautze
                schrieb am zuletzt editiert von
                #7

                Hi,

                Ok dein 2. Post geht.

                Super danke.

                Viele Grüße

                Marcel Jaud

                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

                742

                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