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. [gelöst] SendTo mit Variablen?

NEWS

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

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

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

[gelöst] SendTo mit Variablen?

Geplant Angeheftet Gesperrt Verschoben JavaScript
7 Beiträge 4 Kommentatoren 829 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.
  • BananaJoeB Online
    BananaJoeB Online
    BananaJoe
    Most Active
    schrieb am zuletzt editiert von BananaJoe
    #1

    Ich habe folgendes Problem:

    Phase 1: mit festen Werten
    Ich sende an den SQL Adapter einen Wert - das funktioniert:

    sendTo("sql.0", "storeState", {
        id: '0_userdata.0.Solaranlage.pvforecast',
        state: { 
            val: 2, 
            ts: 1646287080000,
            ack: true
        }
    }, async function (result) {
        console.log(result);
    });
    

    Phase 2: mit Variablen
    nach einigen Probieren fand ich heraus das ich bei val und ts Variablen einsetzen kann wenn ich wie folgt es in Anführungszeichen setze:

    myVal = 2;
    myTS = 1646287080000;
    
    sendTo("sql.0", "storeState", {
        "id": '0_userdata.0.Solaranlage.pvforecast',
        "state": { 
            "val": myVal, 
            "ts": myTS,
            "ack": true
        }
    }, async function (result) {
        console.log(result);
    });
    
    

    Das funktioniert also auch.

    Was ich bisher nicht hinbekommen habe ist nun auch den Wert von id aus einer Variablen zu füttern.
    Also, wie geht das?

    Danke!

    ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

    A 1 Antwort Letzte Antwort
    0
    • BananaJoeB BananaJoe

      Ich habe folgendes Problem:

      Phase 1: mit festen Werten
      Ich sende an den SQL Adapter einen Wert - das funktioniert:

      sendTo("sql.0", "storeState", {
          id: '0_userdata.0.Solaranlage.pvforecast',
          state: { 
              val: 2, 
              ts: 1646287080000,
              ack: true
          }
      }, async function (result) {
          console.log(result);
      });
      

      Phase 2: mit Variablen
      nach einigen Probieren fand ich heraus das ich bei val und ts Variablen einsetzen kann wenn ich wie folgt es in Anführungszeichen setze:

      myVal = 2;
      myTS = 1646287080000;
      
      sendTo("sql.0", "storeState", {
          "id": '0_userdata.0.Solaranlage.pvforecast',
          "state": { 
              "val": myVal, 
              "ts": myTS,
              "ack": true
          }
      }, async function (result) {
          console.log(result);
      });
      
      

      Das funktioniert also auch.

      Was ich bisher nicht hinbekommen habe ist nun auch den Wert von id aus einer Variablen zu füttern.
      Also, wie geht das?

      Danke!

      A Online
      A Online
      Ahnungsbefreit
      schrieb am zuletzt editiert von
      #2

      @bananajoe Das sollte genau so funktionieren, sofern die Variable einen String enthält.

      Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

      BananaJoeB 1 Antwort Letzte Antwort
      0
      • A Ahnungsbefreit

        @bananajoe Das sollte genau so funktionieren, sofern die Variable einen String enthält.

        BananaJoeB Online
        BananaJoeB Online
        BananaJoe
        Most Active
        schrieb am zuletzt editiert von
        #3

        @ahnungsbefreit verdammt,

        my_val = 7;
        my_ts = 1646287080022;
        my_Objekt = "0_userdata.0.Solaranlage.pvforecast";
        
        sendTo("sql.0", "update", {
            "id": 'my_Objekt',
            "state": { 
                "val": my_val, 
                "ts": my_ts,
                "ack": true
            }
        }, async function (result) {
              console.log(result);
            });
        

        hat tatsächlich gerade funktioniert ... ich hatte gestern noch versucht die ' ' mit umzuh zu bauen, das ging dann nicht

        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

        paul53P 1 Antwort Letzte Antwort
        0
        • BananaJoeB BananaJoe

          @ahnungsbefreit verdammt,

          my_val = 7;
          my_ts = 1646287080022;
          my_Objekt = "0_userdata.0.Solaranlage.pvforecast";
          
          sendTo("sql.0", "update", {
              "id": 'my_Objekt',
              "state": { 
                  "val": my_val, 
                  "ts": my_ts,
                  "ack": true
              }
          }, async function (result) {
                console.log(result);
              });
          

          hat tatsächlich gerade funktioniert ... ich hatte gestern noch versucht die ' ' mit umzuh zu bauen, das ging dann nicht

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

          @bananajoe
          Das sollte auch so funktionieren:

          let my_val = 7;
          let my_ts = 1646287080022;
          const my_Objekt = '0_userdata.0.Solaranlage.pvforecast';
           
          sendTo('sql.0', 'update', {
              id: my_Objekt,
              state: { 
                  val: my_val, 
                  ts: my_ts,
                  ack: true
              }
          }, async function (result) {
                console.log(result);
          });
          

          Tut es das nicht?

          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

          A BananaJoeB 2 Antworten Letzte Antwort
          0
          • paul53P paul53

            @bananajoe
            Das sollte auch so funktionieren:

            let my_val = 7;
            let my_ts = 1646287080022;
            const my_Objekt = '0_userdata.0.Solaranlage.pvforecast';
             
            sendTo('sql.0', 'update', {
                id: my_Objekt,
                state: { 
                    val: my_val, 
                    ts: my_ts,
                    ack: true
                }
            }, async function (result) {
                  console.log(result);
            });
            

            Tut es das nicht?

            A Online
            A Online
            Ahnungsbefreit
            schrieb am zuletzt editiert von
            #5

            @paul53 So hatte ich das auch gemeint.

            Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

            1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @bananajoe
              Das sollte auch so funktionieren:

              let my_val = 7;
              let my_ts = 1646287080022;
              const my_Objekt = '0_userdata.0.Solaranlage.pvforecast';
               
              sendTo('sql.0', 'update', {
                  id: my_Objekt,
                  state: { 
                      val: my_val, 
                      ts: my_ts,
                      ack: true
                  }
              }, async function (result) {
                    console.log(result);
              });
              

              Tut es das nicht?

              BananaJoeB Online
              BananaJoeB Online
              BananaJoe
              Most Active
              schrieb am zuletzt editiert von
              #6

              @paul53 doch , es geht. Ich hatte einfach zu kompliziert gedacht das ich die ' ' auch übergeben muss und so etwas wie

              my_Objekt = "'0_userdata.0.Solaranlage.pvforecast'";
              

              versucht. Ich hatte vorher mit der Blockly-Variante gekämpft die das immer falsch übergab

              ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

              AlCalzoneA 1 Antwort Letzte Antwort
              0
              • BananaJoeB BananaJoe

                @paul53 doch , es geht. Ich hatte einfach zu kompliziert gedacht das ich die ' ' auch übergeben muss und so etwas wie

                my_Objekt = "'0_userdata.0.Solaranlage.pvforecast'";
                

                versucht. Ich hatte vorher mit der Blockly-Variante gekämpft die das immer falsch übergab

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

                @bananajoe " und ' sind beides Möglichkeiten, Zeichenketten zu definieren. Wenn du die schachtelst, enthält deine Zeichenkette halt Anführungszeichen. Und wenn du den Namen der Variablen in Anführungszeichen übergibst, dann ist das eine Zeichenkette mit dem Namen der Variablen drin und nicht ihrem Wert.

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

                1 Antwort Letzte Antwort
                1
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                850

                Online

                32.4k

                Benutzer

                81.5k

                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