Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Gelöst] Javascript schreibt nicht in Datenpunkt

NEWS

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

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

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

[Gelöst] Javascript schreibt nicht in Datenpunkt

Scheduled Pinned Locked Moved Skripten / Logik
18 Posts 7 Posters 1.4k Views
  • 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.
  • D Offline
    D Offline
    dna909
    wrote on last edited by
    #4

    > setState('Dreambox_OG_Standby_Status', stateDB, true);

    nimm mal da das true raus.

    Das gehört da glaub ich nicht hin.

    setState('Dreambox_OG_Standby_Status', stateDB);
    

    MfG

    dna909

    Intel NUC7PJYH mit Proxmox, Odroid U2, CCU2, Philips Hue, ESP8266, Xiaomi Robot, Google Chromecast Audio, Instar 6012HD, Bosch HNG6764S6

    1 Reply Last reply
    0
    • L Offline
      L Offline
      LJSven
      wrote on last edited by
      #5

      Kein Ahnung was ich falsch mache. Wenn ich diese Zeile ändere, z.b. in "Test" ändere, schreibt er den Wert.

      var stateDB = "Test";
      

      Wenn ich den Befehl im Log aussgebe:````
      console.log(result.e2powerstate.e2instandby)

      
      Wenn ich es wie folgt mache, wird der Wert nicht übernommen:
      
      

      var stateDB = result.e2powerstate.e2instandby;

      
      Wo ist der Fehler?
      1 Reply Last reply
      0
      • arteckA Offline
        arteckA Offline
        arteck
        Developer Most Active
        wrote on last edited by
        #6

        ist jetzt nicht dein ernst oder…

        var stateDB = getState('result.e2powerstate.e2instandby').val;
        

        zigbee hab ich, zwave auch, nuc's genauso und HA auch

        1 Reply Last reply
        0
        • L Offline
          L Offline
          LJSven
          wrote on last edited by
          #7

          @arteck:

          ist jetzt nicht dein ernst oder…

          var stateDB = getState('result.e2powerstate.e2instandby').val;
          ```` `  
          

          Doch, ich bin da leider nicht erfahren. Allerdings kommt bei deinem Vorschlag folgende Meldung

          "getState "result.e2powerstate.e2instandby" not found (3)"

          Es geht auch hier darum, daß zuerst eine XML ausgelesen wird und dann der Wert in den Datenpunkt geschrieben werden soll.

          1 Reply Last reply
          0
          • AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            wrote on last edited by
            #8

            @LJSven:

            Doch, ich bin da leider nicht erfahren. Allerdings kommt bei deinem Vorschlag folgende Meldung

            "getState "result.e2powerstate.e2instandby" not found (3)" `

            Das macht schon Sinn wie du es hattest. result.e2powerstate.e2instandby ist eine Variable in deinem ausgelesenen Objekt und kein State in ioBroker.
            > Wrong type of javascript.0.Dreambox_OG_Standby_Status: "object"
            bedeutet aber, dass du nicht wie von Bluefox empfohlen den State mit Typ "boolean" (wahr/falsch) erstellst, sondern mit "object". Änder das erst mal und probiers dann nochmal.

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

            1 Reply Last reply
            0
            • paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by
              #9

              Offenbar enthält die Variable result.e2powerstate.e2instandby ein Objekt. Was ergibt ?

              log(JSON.stringify(result.e2powerstate.e2instandby));
              

              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 Reply Last reply
              0
              • L Offline
                L Offline
                LJSven
                wrote on last edited by
                #10

                @paul53:

                Offenbar enthält die Variable result.e2powerstate.e2instandby ein Objekt. Was ergibt ?

                log(JSON.stringify(result.e2powerstate.e2instandby));
                ```` `  
                

                javascript.0 script.js.common.Dreambox_OG.Standby_Status_DB_OG: ["true"]

                1 Reply Last reply
                0
                • paul53P Offline
                  paul53P Offline
                  paul53
                  wrote on last edited by
                  #11

                  Das ist ein Array mit einem Element. Was ergibt ?

                  log(result.e2powerstate.e2instandby[0] + ' ' + typeof result.e2powerstate.e2instandby[0]);
                  

                  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 Reply Last reply
                  0
                  • L Offline
                    L Offline
                    LJSven
                    wrote on last edited by
                    #12

                    @paul53:

                    Das ist ein Array mit einem Element. Was ergibt ?

                    log(result.e2powerstate.e2instandby[0] + ' ' + typeof result.e2powerstate.e2instandby[0]);
                    ```` `  
                    

                    Das ergibt:

                    ! javascript.0 script.js.common.Dreambox_OG.Standby_Status_DB_OG: false string

                    Wenn ich es so mache, scheint es zu gehen:

                    stateDB = JSON.parse(result.e2powerstate.e2instandby);
                    

                    Ist das okay?

                    Kann ich ein Javascript via Blockly starten / stoppen?

                    1 Reply Last reply
                    0
                    • paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by
                      #13

                      @LJSven:

                      var stateDB = JSON.parse(result.e2powerstate.e2instandby);
                      

                      Ist das okay? `
                      Ja.

                      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 Reply Last reply
                      0
                      • L Offline
                        L Offline
                        LJSven
                        wrote on last edited by
                        #14

                        Prima! Kann als gelöst markiert werden.

                        PS. Wenn noch jemand eine Antwort hat, ob ich ein Scirpt per Blockly starten kann, bin ich happy.

                        1 Reply Last reply
                        0
                        • wendy2702W Online
                          wendy2702W Online
                          wendy2702
                          wrote on last edited by
                          #15

                          Ja, das geht.

                          Gibt einen Datenpunkt zu deinem Script der heißt etwas mit „script.enabled“.

                          Z.B.

                          999_f84ea20d-0854-45b7-a64f-ced5c1869903.jpeg

                          Denn kannst du über eine Blockly per Cron z.B. Für 2-3 Sekunden auf „true“ setzen.

                          Das````
                          [Gelöst]

                          Bitte keine Fragen per PN, die gehören ins Forum!

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          1 Reply Last reply
                          0
                          • L Offline
                            L Offline
                            LJSven
                            wrote on last edited by
                            #16

                            Hier mein Script um die Dreambox (Enigma2) den Standby Status abzufragen:

                            ! const request = require('request');
                            ! const parser = require('xml2js').parseString;
                            ! createState('javascript.0.Dreambox_OG_Standby_Status', false, {
                            ! read: true,
                            ! write: true,
                            ! desc: "DB500 Standby Status",
                            ! type: "object",
                            ! def: false
                            ! });
                            ! function getDB500Status(xml) {
                            ! parser(xml, function (err, result) {
                            ! if(err) log('Fehler XML-Parsen: ' + err, 'error');
                            ! else {
                            ! var stateDB;
                            ! stateDB = JSON.parse(result.e2powerstate.e2instandby);
                            ! setState('javascript.0.Dreambox_OG_Standby_Status', stateDB);
                            ! console.log(JSON.parse(result.e2powerstate.e2instandby));
                            ! }
                            ! });
                            ! }
                            ! function getXML() {
                            ! request('http://root:%2A%2A%2A%2A%2A%2A%2A%2A@192.168.178.220:88/web/powerstate', function (error, response, body) {
                            ! if (error) log("Fehler beim Herunterladen: " + error, 'error');
                            ! else getDB500Status(body);
                            ! });
                            ! }
                            ! schedule('* * * * *', getXML); // jede Minute

                            1 Reply Last reply
                            0
                            • wendy2702W Online
                              wendy2702W Online
                              wendy2702
                              wrote on last edited by
                              #17

                              Danke fürs teilen!

                              Bitte keine Fragen per PN, die gehören ins Forum!

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              1 Reply Last reply
                              0
                              • paul53P Offline
                                paul53P Offline
                                paul53
                                wrote on last edited by
                                #18

                                @LJSven:

                                createState('javascript.0.Dreambox_OG_Standby_Status', false, {

                                read: true,

                                write: true,

                                desc: "DB500 Standby Status",

                                type: "object",

                                def: false

                                }); `
                                Der Datenpunkt-Typ ist falsch !

                                createState('javascript.0.Dreambox_OG_Standby_Status', false, {
                                   read: true,
                                   write: true,
                                   desc: "DB500 Standby Status",
                                   type: "boolean",
                                   def: false
                                });
                                

                                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 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

                                351

                                Online

                                32.4k

                                Users

                                81.4k

                                Topics

                                1.3m

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

                                • Don't have an account? Register

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