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. JavaScript
  5. Ausgegebene Werte werden als nicht "Bestätigt" ausgegeben

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
    930

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Ausgegebene Werte werden als nicht "Bestätigt" ausgegeben

Geplant Angeheftet Gesperrt Verschoben JavaScript
16 Beiträge 4 Kommentatoren 948 Aufrufe 3 Watching
  • Ä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.
  • R renni61

    @alcalzone

    Hallo,

    darf ich Dich nochmal um Hilfe bitten? Nachfolgend ein Scriptausschnitt:

        desc = obj.desc;
        event = obj.event;
        lat = obj.lat;
        lon = obj.lon;
        acc = obj.acc;
    

    Ich würde gern die Datenpunkte "lat" und "lon" in einem weiteren Extra-Datenpunkt ("pos") mittels Kommatrennung (Bsp. 55,00, 10,00) zusammen ausgeben. Mit der Variante "pos = obj.lat, obj.lon" funzt das leider nicht. Auch ein Semikolon als "Trenner" zeigt keinen Erfolg.
    Sorry für die nochmalige "Störung".
    VG Jörg

    T Nicht stören
    T Nicht stören
    ticaki
    schrieb am zuletzt editiert von ticaki
    #5

    @renni61
    Wenn der Datenpunkt eine Zeichenkette ist geht es so:

    pos = obj.lat + ', ' + obj.lon;
    

    oder in schön:

    pos = obj.lat.toString() + ', ' + obj.lon.toString();
    

    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

    Spenden

    R T 3 Antworten Letzte Antwort
    0
    • T ticaki

      @renni61
      Wenn der Datenpunkt eine Zeichenkette ist geht es so:

      pos = obj.lat + ', ' + obj.lon;
      

      oder in schön:

      pos = obj.lat.toString() + ', ' + obj.lon.toString();
      
      R Offline
      R Offline
      renni61
      schrieb am zuletzt editiert von
      #6

      @ticaki

      Hi,
      besten Dank für die superschnelle Rückmeldung! Die Daten kommen aus einem MQTT-String.
      Mit Deiner Variante gibt er im neu zu rstellenden Datenpunkt leider die Summe beider Einzeldatenpunkte aus. :cry:
      VG Jörg

      AlCalzoneA 1 Antwort Letzte Antwort
      0
      • R renni61

        @ticaki

        Hi,
        besten Dank für die superschnelle Rückmeldung! Die Daten kommen aus einem MQTT-String.
        Mit Deiner Variante gibt er im neu zu rstellenden Datenpunkt leider die Summe beider Einzeldatenpunkte aus. :cry:
        VG Jörg

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        schrieb am zuletzt editiert von
        #7

        @renni61 sagte in Ausgegebene Werte werden als nicht "Bestätigt" ausgegeben:

        Summe beider Einzeldatenpunkte

        Das dürfte nicht sein, selbst wenn es sich um Zahlen handelt:
        f1611b7f-fb3b-4edd-88b6-29884c76fc89-grafik.png

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        R 1 Antwort Letzte Antwort
        0
        • T ticaki

          @renni61
          Wenn der Datenpunkt eine Zeichenkette ist geht es so:

          pos = obj.lat + ', ' + obj.lon;
          

          oder in schön:

          pos = obj.lat.toString() + ', ' + obj.lon.toString();
          
          R Offline
          R Offline
          renni61
          schrieb am zuletzt editiert von
          #8

          @ticaki

          Hi, >>> Kommando von meiner vorhergehenden Antwort zurück! Es funktioniert doch mit Deiner Variante.
          Vielen lieben Dank!!! :+1: :+1: :+1:
          Jörg

          1 Antwort Letzte Antwort
          0
          • T ticaki

            @renni61
            Wenn der Datenpunkt eine Zeichenkette ist geht es so:

            pos = obj.lat + ', ' + obj.lon;
            

            oder in schön:

            pos = obj.lat.toString() + ', ' + obj.lon.toString();
            
            T Nicht stören
            T Nicht stören
            ticaki
            schrieb am zuletzt editiert von
            #9

            @renni61
            @ticaki sagte in Ausgegebene Werte werden als nicht "Bestätigt" ausgegeben:

            @renni61
            Wenn der Datenpunkt eine Zeichenkette ist geht es so:

            Da hab ich mich schlecht ausgedrückt. Das Beispiel von mir wandelt die Eingage ob Zeichenkette, Nummer oder Float in eine Zeichenkette um.

            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

            Spenden

            1 Antwort Letzte Antwort
            0
            • AlCalzoneA AlCalzone

              @renni61 sagte in Ausgegebene Werte werden als nicht "Bestätigt" ausgegeben:

              Summe beider Einzeldatenpunkte

              Das dürfte nicht sein, selbst wenn es sich um Zahlen handelt:
              f1611b7f-fb3b-4edd-88b6-29884c76fc89-grafik.png

              R Offline
              R Offline
              renni61
              schrieb am zuletzt editiert von
              #10

              @alcalzone

              Hallo,

              auch auf die "Gefahr" hin das ich nerve, muss ich (hoffentlich letztmalig) nochmal um Hilfe bitten. :man-shrugging:

              Das nachfolgende Script läuft - dank Eurer Hilfestellung - dem Grunde nach (was die Ausgabe betrifft) eigentlich akkurat nach meinen Vorstellungen. Leider werden jedoch im Protokoll Warnungen ausgegeben, die ich nicht beseitigt bekomme.

              Die Aufstellung der ausgegebenen Warnungen sind direkt hinter dem Script aufgeführt.

              Der vermeintliche Verursacher der Warnungen scheint die Zeile 47 zu sein. Lösche ich diese, läuft ALLES ohne Fehlermeldung. Ich habe keine Ahnung, wo hier nun wieder der "Hund begraben liegt".

              var pfad = "0_userdata.0.owntracks.";
              var channel = "RennertJ.";
              var sname = "S20.";
              var idevent = pfad + channel + sname + 'Presence';
              var iddesc = pfad + channel + sname + 'Location';
              var idlat = pfad + channel + sname + 'Latitude';
              var idlon = pfad + channel + sname + 'Longitude';
              var idacc = pfad + channel + sname + 'Accuracy';
              var idpos = pfad + channel + sname + 'Position';
              
              createState(idevent, 0, { type: 'string', name: 'Anwesenheit', read: true, write: true, role: 'variable' });
              createState(iddesc, 0, { type: 'string', name: 'Ort', read: true, write: true, role: 'variable' });
              createState(idlat, 0, { type: 'number', name: 'Breitengrad', read: true, write: true, role: 'number', unit: '°'});
              createState(idlon, 0, { type: 'number', name: 'Laengengrad', read: true, write: true, role: 'number', unit: '°'});
              createState(idacc, 0, { type: 'number', name: 'Genauigkeit', read: true, write: true, role: 'number', unit: 'm'});
              createState(idpos, 0, { type: 'number', name: 'Position', read: true, write: true, role: 'number'});
              
              // Script
              on({ id: 'mqtt.0.owntracks.RennertJ.S20.event', change: "any" }, function (obj) {
              
              // Variabeln erstellen
                  var event;
                  var desc;
                  var lat;
                  var lon;
                  var acc;
                  var pos;
                  
                  try {
                      obj = JSON.parse(getState('mqtt.0.owntracks.RennertJ.S20.event').val);
                  } catch (e) {
                      console.error('Cannot parse: ' + getState('mqtt.0.owntracks.RennertJ.S20.event').val);
                      return;
                  }
              
                  desc = obj.desc;
                  event = obj.event;
                  lat = obj.lat;
                  lon = obj.lon;
                  acc = obj.acc;
                  pos = obj.lat.toString() + ', ' + obj.lon.toString();
                  
                  setState(idevent, event, true);
                  setState(iddesc, desc, true);
                  setState(idlat, lat, true);
                  setState(idlon, lon, true);
                  setState(idpos, pos, true);
              })
              

              javascript.0
              2021-09-21 20:47:57.577 info State value to set for "0_userdata.0.owntracks.RennertJ.S20.Position" has to be type "number" but received type "string"

              javascript.0
              2021-09-21 20:47:57.536 warn at processImmediate (internal/timers.js:461:21)

              javascript.0
              2021-09-21 20:47:57.536 warn at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5706:41)

              javascript.0
              2021-09-21 20:47:57.536 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:525:29)

              javascript.0
              2021-09-21 20:47:57.535 warn at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1087:38)

              javascript.0
              2021-09-21 20:47:57.533 warn at Object.<anonymous> (script.js.common.MQTT.Owntracks_S20:47:5)

              javascript.0
              2021-09-21 20:47:57.532 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)

              Thanks!

              VG Jörg

              T 1 Antwort Letzte Antwort
              0
              • R renni61

                @alcalzone

                Hallo,

                auch auf die "Gefahr" hin das ich nerve, muss ich (hoffentlich letztmalig) nochmal um Hilfe bitten. :man-shrugging:

                Das nachfolgende Script läuft - dank Eurer Hilfestellung - dem Grunde nach (was die Ausgabe betrifft) eigentlich akkurat nach meinen Vorstellungen. Leider werden jedoch im Protokoll Warnungen ausgegeben, die ich nicht beseitigt bekomme.

                Die Aufstellung der ausgegebenen Warnungen sind direkt hinter dem Script aufgeführt.

                Der vermeintliche Verursacher der Warnungen scheint die Zeile 47 zu sein. Lösche ich diese, läuft ALLES ohne Fehlermeldung. Ich habe keine Ahnung, wo hier nun wieder der "Hund begraben liegt".

                var pfad = "0_userdata.0.owntracks.";
                var channel = "RennertJ.";
                var sname = "S20.";
                var idevent = pfad + channel + sname + 'Presence';
                var iddesc = pfad + channel + sname + 'Location';
                var idlat = pfad + channel + sname + 'Latitude';
                var idlon = pfad + channel + sname + 'Longitude';
                var idacc = pfad + channel + sname + 'Accuracy';
                var idpos = pfad + channel + sname + 'Position';
                
                createState(idevent, 0, { type: 'string', name: 'Anwesenheit', read: true, write: true, role: 'variable' });
                createState(iddesc, 0, { type: 'string', name: 'Ort', read: true, write: true, role: 'variable' });
                createState(idlat, 0, { type: 'number', name: 'Breitengrad', read: true, write: true, role: 'number', unit: '°'});
                createState(idlon, 0, { type: 'number', name: 'Laengengrad', read: true, write: true, role: 'number', unit: '°'});
                createState(idacc, 0, { type: 'number', name: 'Genauigkeit', read: true, write: true, role: 'number', unit: 'm'});
                createState(idpos, 0, { type: 'number', name: 'Position', read: true, write: true, role: 'number'});
                
                // Script
                on({ id: 'mqtt.0.owntracks.RennertJ.S20.event', change: "any" }, function (obj) {
                
                // Variabeln erstellen
                    var event;
                    var desc;
                    var lat;
                    var lon;
                    var acc;
                    var pos;
                    
                    try {
                        obj = JSON.parse(getState('mqtt.0.owntracks.RennertJ.S20.event').val);
                    } catch (e) {
                        console.error('Cannot parse: ' + getState('mqtt.0.owntracks.RennertJ.S20.event').val);
                        return;
                    }
                
                    desc = obj.desc;
                    event = obj.event;
                    lat = obj.lat;
                    lon = obj.lon;
                    acc = obj.acc;
                    pos = obj.lat.toString() + ', ' + obj.lon.toString();
                    
                    setState(idevent, event, true);
                    setState(iddesc, desc, true);
                    setState(idlat, lat, true);
                    setState(idlon, lon, true);
                    setState(idpos, pos, true);
                })
                

                javascript.0
                2021-09-21 20:47:57.577 info State value to set for "0_userdata.0.owntracks.RennertJ.S20.Position" has to be type "number" but received type "string"

                javascript.0
                2021-09-21 20:47:57.536 warn at processImmediate (internal/timers.js:461:21)

                javascript.0
                2021-09-21 20:47:57.536 warn at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5706:41)

                javascript.0
                2021-09-21 20:47:57.536 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:525:29)

                javascript.0
                2021-09-21 20:47:57.535 warn at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1087:38)

                javascript.0
                2021-09-21 20:47:57.533 warn at Object.<anonymous> (script.js.common.MQTT.Owntracks_S20:47:5)

                javascript.0
                2021-09-21 20:47:57.532 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)

                Thanks!

                VG Jörg

                T Nicht stören
                T Nicht stören
                ticaki
                schrieb am zuletzt editiert von ticaki
                #11

                @renni61
                Ich kanns mir nicht verkeifen :) Lesen bildet

                Wenn der Datenpunkt eine Zeichenkette ist geht es so:

                Das Beispiel von mir wandelt die Eingage ob Zeichenkette, Nummer oder Float in eine Zeichenkette um.

                createState(idpos, 0, { type: 'number', name: 'Position', read: true, write: true, role: 'number'});
                
                createState(idpos, 0, { type: 'string', name: 'Position', read: true, write: true, role: 'number'});
                

                Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                Spenden

                R 1 Antwort Letzte Antwort
                0
                • T ticaki

                  @renni61
                  Ich kanns mir nicht verkeifen :) Lesen bildet

                  Wenn der Datenpunkt eine Zeichenkette ist geht es so:

                  Das Beispiel von mir wandelt die Eingage ob Zeichenkette, Nummer oder Float in eine Zeichenkette um.

                  createState(idpos, 0, { type: 'number', name: 'Position', read: true, write: true, role: 'number'});
                  
                  createState(idpos, 0, { type: 'string', name: 'Position', read: true, write: true, role: 'number'});
                  
                  R Offline
                  R Offline
                  renni61
                  schrieb am zuletzt editiert von
                  #12

                  @ticaki

                  Mh, hatte ich auch in der "Verlosung" gehabt und mehrmals vor meiner Nachfrage geändert. Trotzdem kommen weiter Fehlermeldungen:

                  javascript.0
                  2021-09-21 21:39:06.208 info State value to set for "0_userdata.0.owntracks.RennertJ.S20.Position" has to be type "number" but received type "string"

                  javascript.0
                  2021-09-21 21:39:06.193 warn at processImmediate (internal/timers.js:461:21)

                  javascript.0
                  2021-09-21 21:39:06.193 warn at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5706:41)

                  javascript.0
                  2021-09-21 21:39:06.193 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:525:29)

                  javascript.0
                  2021-09-21 21:39:06.193 warn at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1087:38)

                  javascript.0
                  2021-09-21 21:39:06.192 warn at Object.<anonymous> (script.js.common.MQTT.Owntracks_S20:48:5)

                  javascript.0
                  2021-09-21 21:39:06.192 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)

                  javascript.0
                  2021-09-21 21:39:06.190 warn You are assigning a string to the state "0_userdata.0.owntracks.RennertJ.S20.Position" which expects a number. Please fix your code to use a number or change the state type to string. This warning might become an error in future versions.

                  VG Jörg

                  T 1 Antwort Letzte Antwort
                  0
                  • R renni61

                    @ticaki

                    Mh, hatte ich auch in der "Verlosung" gehabt und mehrmals vor meiner Nachfrage geändert. Trotzdem kommen weiter Fehlermeldungen:

                    javascript.0
                    2021-09-21 21:39:06.208 info State value to set for "0_userdata.0.owntracks.RennertJ.S20.Position" has to be type "number" but received type "string"

                    javascript.0
                    2021-09-21 21:39:06.193 warn at processImmediate (internal/timers.js:461:21)

                    javascript.0
                    2021-09-21 21:39:06.193 warn at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5706:41)

                    javascript.0
                    2021-09-21 21:39:06.193 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:525:29)

                    javascript.0
                    2021-09-21 21:39:06.193 warn at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1087:38)

                    javascript.0
                    2021-09-21 21:39:06.192 warn at Object.<anonymous> (script.js.common.MQTT.Owntracks_S20:48:5)

                    javascript.0
                    2021-09-21 21:39:06.192 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)

                    javascript.0
                    2021-09-21 21:39:06.190 warn You are assigning a string to the state "0_userdata.0.owntracks.RennertJ.S20.Position" which expects a number. Please fix your code to use a number or change the state type to string. This warning might become an error in future versions.

                    VG Jörg

                    T Nicht stören
                    T Nicht stören
                    ticaki
                    schrieb am zuletzt editiert von
                    #13

                    @renni61
                    Ich glaube nicht das createState den Type ändert. Du mußt den State wohl löschen und neu erstellen lassen. Aber das ist auf jeden Fall der Fehler.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    AsgothianA R 3 Antworten Letzte Antwort
                    0
                    • T ticaki

                      @renni61
                      Ich glaube nicht das createState den Type ändert. Du mußt den State wohl löschen und neu erstellen lassen. Aber das ist auf jeden Fall der Fehler.

                      AsgothianA Offline
                      AsgothianA Offline
                      Asgothian
                      Developer
                      schrieb am zuletzt editiert von
                      #14

                      @ticaki sagte in Ausgegebene Werte werden als nicht "Bestätigt" ausgegeben:

                      @renni61
                      Ich glaube nicht das createState den Type ändert. Du mußt den State wohl löschen und neu erstellen lassen. Aber das ist auf jeden Fall der Fehler.

                      Du kannst den Typ des State auch im Admin anpassen - wenn du auf die Expertenansicht umstellst.

                      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                      1 Antwort Letzte Antwort
                      0
                      • T ticaki

                        @renni61
                        Ich glaube nicht das createState den Type ändert. Du mußt den State wohl löschen und neu erstellen lassen. Aber das ist auf jeden Fall der Fehler.

                        R Offline
                        R Offline
                        renni61
                        schrieb am zuletzt editiert von
                        #15

                        @ticaki

                        Es ist zum Haare raufen! Alles gelöscht und einen völlig neuen Script aufgesetzt, Fehlermeldungen bleiben.
                        Nach Zustandsänderung kommt im Scriptbearbeitungsfenster sofort folgende Warnung:

                        22:19:48.903 warn javascript.0 (132) at Object.<anonymous> (script.js.common.MQTT.S20_RJ:47:5)

                        Wenn ich das mit meinen sehr dürftigen Kenntnissen richtig interpretiere, weißt doch der Fehler hier auf Zeile 47 hin, oder täusche ich mich da? Ich glaube, ich renne gleich mit meinem Holzkopp gegen die Wand. :angry:

                        1 Antwort Letzte Antwort
                        0
                        • T ticaki

                          @renni61
                          Ich glaube nicht das createState den Type ändert. Du mußt den State wohl löschen und neu erstellen lassen. Aber das ist auf jeden Fall der Fehler.

                          R Offline
                          R Offline
                          renni61
                          schrieb am zuletzt editiert von
                          #16

                          @ticaki

                          So, Problem ist gelöst. :man-gesturing-ok:

                          Ich Vollhonk hatte folgenden Ausdruck nicht im Script drin:

                          setState(idacc, acc, true);
                          

                          Das war schlussendlich der verfluchte Fehler.
                          Ganz lieben Dank dennoch für Eure Hilfestellung!!! Ich weiß das hoch zu würdigen! THANKS!!!

                          Gute Nacht

                          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

                          741

                          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