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. Fehler Im Skript Cannot find name 'data' Engine 4.4.3

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Fehler Im Skript Cannot find name 'data' Engine 4.4.3

Geplant Angeheftet Gesperrt Verschoben JavaScript
4 Beiträge 2 Kommentatoren 326 Aufrufe 1 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.
  • I Offline
    I Offline
    imushroom
    schrieb am zuletzt editiert von imushroom
    #1

    Hey, ich versuche wie hier beschrieben, die Daten zu Parsen und an den Geofency Adapter weiterzugeben :

    https://forum.iobroker.net/topic/6422/geofency-0-2-0-message-support-und-authentication-fix/42

    Ich habe das Java Skript auch dem iot Adapter angepasst.

    Die Daten kommen auch an.

    Die Variable 'User' wird dem Geofency Adapter auch einwandfrei übergeben.

    Jedoch bei "Data" sagt mir schon der Skript Editor Fehler Cannot find name 'data'

    somit werden natürlich auch die Daten nicht übergeben.

    Muss ich data irgendwo vorher anlegen?

    on({id: "iot.0.services.custom_Geofence_1", change: 'any'}, function(obj) {
    log(JSON.stringify(obj));
    try {
    data = JSON.parse(obj.state.val);
    }
    catch (err) {
    data = null;
    }
    if (! data) {
    log('ERROR: Geofency data invalid: ' + data, 'error');
    return;
    }
    var user = 'Device1-User';
    sendTo('geofency.1', {'user': user, 'data': data});
    });

    paul53P 1 Antwort Letzte Antwort
    0
    • I imushroom

      Hey, ich versuche wie hier beschrieben, die Daten zu Parsen und an den Geofency Adapter weiterzugeben :

      https://forum.iobroker.net/topic/6422/geofency-0-2-0-message-support-und-authentication-fix/42

      Ich habe das Java Skript auch dem iot Adapter angepasst.

      Die Daten kommen auch an.

      Die Variable 'User' wird dem Geofency Adapter auch einwandfrei übergeben.

      Jedoch bei "Data" sagt mir schon der Skript Editor Fehler Cannot find name 'data'

      somit werden natürlich auch die Daten nicht übergeben.

      Muss ich data irgendwo vorher anlegen?

      on({id: "iot.0.services.custom_Geofence_1", change: 'any'}, function(obj) {
      log(JSON.stringify(obj));
      try {
      data = JSON.parse(obj.state.val);
      }
      catch (err) {
      data = null;
      }
      if (! data) {
      log('ERROR: Geofency data invalid: ' + data, 'error');
      return;
      }
      var user = 'Device1-User';
      sendTo('geofency.1', {'user': user, 'data': data});
      });

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @imushroom sagte in Fehler Im Skript Cannot find name 'data' Engine 4.4.3:

      Muss ich data irgendwo vorher anlegen?

      Nein, deklarieren.

      let data = JSON.parse(obj.state.val);
      

      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
      • I Offline
        I Offline
        imushroom
        schrieb am zuletzt editiert von imushroom
        #3

        okay, habe nicht so viel Erfahrungen mit Java Script... komme eher aus der C++ ecke und da auch nur grundlegendes... :)

        Jetzt klappts auch.

        Jedoch habe ich let data ganz oben im Skript deklariert...

        let data
        on({id: "iot.0.services.custom_Geofence_1", change: 'any'}, function(obj) {
            log(JSON.stringify(obj));    
            try {
                data = JSON.parse(obj.state.val);
            }
            catch (err) {
                data = null;
            }
            if (! data) {
                log('ERROR: Geofency data invalid: ' + data, 'error');
                return;
            }
            var user = 'Device1-User';
            sendTo('geofency.1', {'user': user, 'data': data});
        });
        
        

        Ich gehe davon aus das ist korrekt so??

        Wäre cool wenn du mir das erläutern kannst, damit ich die Syntax auch in Zukunft richtig mache ;)

        Vielen Dank!!!

        paul53P 1 Antwort Letzte Antwort
        0
        • I imushroom

          okay, habe nicht so viel Erfahrungen mit Java Script... komme eher aus der C++ ecke und da auch nur grundlegendes... :)

          Jetzt klappts auch.

          Jedoch habe ich let data ganz oben im Skript deklariert...

          let data
          on({id: "iot.0.services.custom_Geofence_1", change: 'any'}, function(obj) {
              log(JSON.stringify(obj));    
              try {
                  data = JSON.parse(obj.state.val);
              }
              catch (err) {
                  data = null;
              }
              if (! data) {
                  log('ERROR: Geofency data invalid: ' + data, 'error');
                  return;
              }
              var user = 'Device1-User';
              sendTo('geofency.1', {'user': user, 'data': data});
          });
          
          

          Ich gehe davon aus das ist korrekt so??

          Wäre cool wenn du mir das erläutern kannst, damit ich die Syntax auch in Zukunft richtig mache ;)

          Vielen Dank!!!

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @imushroom sagte:

          Jedoch habe ich let data ganz oben im Skript deklariert...

          Das geht natürlich auch. Sonst bei der ersten Wertzuweisung.

          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
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          789

          Online

          32.5k

          Benutzer

          81.7k

          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