Skip to content
  • Home
  • 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
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Skript läuft aber ändert keine Werte

NEWS

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

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

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

Skript läuft aber ändert keine Werte

Scheduled Pinned Locked Moved JavaScript
3 Posts 2 Posters 117 Views 1 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.
  • teradesT Offline
    teradesT Offline
    terades
    wrote on last edited by
    #1

    Hallo, hat einer eine Idee warum mein Skript nicht so läuft, wie es sollte?

    Im Debug gibt es mir die Werte aus und sagt "SetState" macht er nicht weil er sich im debug befindet.

    Aber normal sollte doch
    9dc8f04e-f37d-4222-9be9-b2a2f3da2d3f-image.png
    so das Skript laufen und auf die Änderung des Datenpunktes (Passiert jede Minute) warten und dann loslaufen oder?

    Danke für Tipps!

    on({id: "mqtt.0.alphaess..AE3100520060079", change: "any"}, function (obj) { ParseCommand(obj); });
     
    function ParseCommand(obj) {
     
        let value = obj.state.val;
        let ErzeugungStrang1 = 0;
        let ErzeugungStrang2 = 0;
        let AkkuStand = 0;
        let AkkuLeistung = 0;
        let Phase1 = 0;
        let Phase2 = 0;
        let Phase3 = 0;
        let Phase1Last = 0;
        let Phase2Last = 0;
        let Phase3Last = 0;
    
    
      try { 
        obj = JSON.parse(value);
        
        ErzeugungStrang1 = obj.ppv1;
        ErzeugungStrang2 = obj.ppv2;
        AkkuStand = obj.soc;
        AkkuLeistung = obj.pbat;
        Phase1 = obj.pmeter_l1;
        Phase2 = obj.pmeter_l2;
        Phase3 = obj.pmeter_l3;
        Phase1Last = obj.preal_l1;
        Phase2Last = obj.preal_l2;
        Phase3Last = obj.preal_l3;
    
        setState('0_userdata.0.Hass-PV.ErzeugungStrang1', ErzeugungStrang1); 
        setState('0_userdata.0.Hass-PV.ErzeugungStrang2', ErzeugungStrang2); 
        setState('0_userdata.0.Hass-PV.AkkuStand', AkkuStand); 
        setState('0_userdata.0.Hass-PV.AkkuLeistung', AkkuLeistung); 
        setState('0_userdata.0.Hass-PV.Phase1', Phase1); 
        setState('0_userdata.0.Hass-PV.Phase2', Phase2); 
        setState('0_userdata.0.Hass-PV.Phase3', Phase3); 
        setState('0_userdata.0.Hass-PV.Phase1Last', Phase1Last); 
        setState('0_userdata.0.Hass-PV.Phase2Last', Phase2Last); 
        setState('0_userdata.0.Hass-PV.Phase3Last', Phase3Last); 
    
        console.debug("ErzeugungStrang1: " + ErzeugungStrang1);
        console.debug("ErzeugungStrang2: " + ErzeugungStrang2);
        console.debug("AkkuStand: " + AkkuStand);
        console.debug("AkkuLeistung: " + AkkuLeistung);
        console.debug("Phase1: " + Phase1);
        console.debug("Phase2: " + Phase2);
        console.debug("Phase3: " + Phase3);
        console.debug("Phase1Last: " + Phase1Last);
        console.debug("Phase2Last: " + Phase2Last);
        console.debug("Phase3Last: " + Phase3Last);
    
      } catch (e) {
        return;
      }
    }
    
    paul53P 1 Reply Last reply
    0
    • teradesT terades

      Hallo, hat einer eine Idee warum mein Skript nicht so läuft, wie es sollte?

      Im Debug gibt es mir die Werte aus und sagt "SetState" macht er nicht weil er sich im debug befindet.

      Aber normal sollte doch
      9dc8f04e-f37d-4222-9be9-b2a2f3da2d3f-image.png
      so das Skript laufen und auf die Änderung des Datenpunktes (Passiert jede Minute) warten und dann loslaufen oder?

      Danke für Tipps!

      on({id: "mqtt.0.alphaess..AE3100520060079", change: "any"}, function (obj) { ParseCommand(obj); });
       
      function ParseCommand(obj) {
       
          let value = obj.state.val;
          let ErzeugungStrang1 = 0;
          let ErzeugungStrang2 = 0;
          let AkkuStand = 0;
          let AkkuLeistung = 0;
          let Phase1 = 0;
          let Phase2 = 0;
          let Phase3 = 0;
          let Phase1Last = 0;
          let Phase2Last = 0;
          let Phase3Last = 0;
      
      
        try { 
          obj = JSON.parse(value);
          
          ErzeugungStrang1 = obj.ppv1;
          ErzeugungStrang2 = obj.ppv2;
          AkkuStand = obj.soc;
          AkkuLeistung = obj.pbat;
          Phase1 = obj.pmeter_l1;
          Phase2 = obj.pmeter_l2;
          Phase3 = obj.pmeter_l3;
          Phase1Last = obj.preal_l1;
          Phase2Last = obj.preal_l2;
          Phase3Last = obj.preal_l3;
      
          setState('0_userdata.0.Hass-PV.ErzeugungStrang1', ErzeugungStrang1); 
          setState('0_userdata.0.Hass-PV.ErzeugungStrang2', ErzeugungStrang2); 
          setState('0_userdata.0.Hass-PV.AkkuStand', AkkuStand); 
          setState('0_userdata.0.Hass-PV.AkkuLeistung', AkkuLeistung); 
          setState('0_userdata.0.Hass-PV.Phase1', Phase1); 
          setState('0_userdata.0.Hass-PV.Phase2', Phase2); 
          setState('0_userdata.0.Hass-PV.Phase3', Phase3); 
          setState('0_userdata.0.Hass-PV.Phase1Last', Phase1Last); 
          setState('0_userdata.0.Hass-PV.Phase2Last', Phase2Last); 
          setState('0_userdata.0.Hass-PV.Phase3Last', Phase3Last); 
      
          console.debug("ErzeugungStrang1: " + ErzeugungStrang1);
          console.debug("ErzeugungStrang2: " + ErzeugungStrang2);
          console.debug("AkkuStand: " + AkkuStand);
          console.debug("AkkuLeistung: " + AkkuLeistung);
          console.debug("Phase1: " + Phase1);
          console.debug("Phase2: " + Phase2);
          console.debug("Phase3: " + Phase3);
          console.debug("Phase1Last: " + Phase1Last);
          console.debug("Phase2Last: " + Phase2Last);
          console.debug("Phase3Last: " + Phase3Last);
      
        } catch (e) {
          return;
        }
      }
      
      paul53P Offline
      paul53P Offline
      paul53
      wrote on last edited by
      #2

      @terades sagte: sagt "SetState" macht er nicht weil er sich im debug befindet.

      Debug-Modus rechts oben deaktivieren!

      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

      teradesT 1 Reply Last reply
      0
      • paul53P paul53

        @terades sagte: sagt "SetState" macht er nicht weil er sich im debug befindet.

        Debug-Modus rechts oben deaktivieren!

        teradesT Offline
        teradesT Offline
        terades
        wrote on last edited by
        #3

        @paul53 OMG das war peinlich , danke!

        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

        414

        Online

        32.4k

        Users

        81.5k

        Topics

        1.3m

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

        • Don't have an account? Register

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