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. Blockly
  5. Datenpunkt erzeugen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    491

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

Datenpunkt erzeugen

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
43 Beiträge 10 Kommentatoren 15.0k Aufrufe 14 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.
  • ? Ein ehemaliger Benutzer

    @ahnungsbefreit sagte in Datenpunkt erzeugen:

    @dom-sch Ja:
    cdbaa6d3-59f4-4220-b103-477cf2c2665b-image.png

    Hallo, danke für deinen Post. Hat mir geholfen. Ich habe noch eine Frage zu dem Common Feld. Was kann man da einschreiben?
    Gibt es im Blockly eine Möglichkeit vor dem erstellen abzufragen ob der Datenpunkt schon vorhanden ist?

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

    @kilian-z said in Datenpunkt erzeugen:

    Ich habe noch eine Frage zu dem Common Feld. Was kann man da einschreiben?

    Siehe oben, Paul's Post:

    241964fa-4fe1-4776-9780-7f4846b30103-image.png

    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
    • A Ahnungsbefreit

      @kilian-z said in Datenpunkt erzeugen:

      Ich habe noch eine Frage zu dem Common Feld. Was kann man da einschreiben?

      Siehe oben, Paul's Post:

      241964fa-4fe1-4776-9780-7f4846b30103-image.png

      ? Offline
      ? Offline
      Ein ehemaliger Benutzer
      schrieb am zuletzt editiert von
      #25

      @ahnungsbefreit sry ich meine unter Common. Soll das bedeuten daß die Funktionen die darin stehen erst ausgeführt werden nachdem der Datenpunkt erstellt wurde?

      A 1 Antwort Letzte Antwort
      0
      • ? Ein ehemaliger Benutzer

        @ahnungsbefreit sry ich meine unter Common. Soll das bedeuten daß die Funktionen die darin stehen erst ausgeführt werden nachdem der Datenpunkt erstellt wurde?

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

        @kilian-z Das sind keine Funktionen, sondern Eigenschaften des Datenpunkts wie z.B. der Typ (number/boolean/string/...) oder für number die Einheit (%/°C/...). Damit kannst Du beim Anlegen das Verhalten des DPs definieren

        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
        • ? Ein ehemaliger Benutzer

          @ahnungsbefreit sagte in Datenpunkt erzeugen:

          @dom-sch Ja:
          cdbaa6d3-59f4-4220-b103-477cf2c2665b-image.png

          Hallo, danke für deinen Post. Hat mir geholfen. Ich habe noch eine Frage zu dem Common Feld. Was kann man da einschreiben?
          Gibt es im Blockly eine Möglichkeit vor dem erstellen abzufragen ob der Datenpunkt schon vorhanden ist?

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

          @kilian-z said in Datenpunkt erzeugen:

          Gibt es im Blockly eine Möglichkeit vor dem erstellen abzufragen ob der Datenpunkt schon vorhanden ist?

          Das ist nicht nötig. Wenn der DP schon existiert, passiert einfach nix. Wenn Du aber die Info trotzdem brauchst, ob der DP existiert, könnte man das über eine Javascript Funktion realisieren.

          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
          • A Ahnungsbefreit

            @kilian-z said in Datenpunkt erzeugen:

            Gibt es im Blockly eine Möglichkeit vor dem erstellen abzufragen ob der Datenpunkt schon vorhanden ist?

            Das ist nicht nötig. Wenn der DP schon existiert, passiert einfach nix. Wenn Du aber die Info trotzdem brauchst, ob der DP existiert, könnte man das über eine Javascript Funktion realisieren.

            ? Offline
            ? Offline
            Ein ehemaliger Benutzer
            schrieb am zuletzt editiert von
            #28

            @ahnungsbefreit
            Vielen Dank. Hat alles funktioniert. 👍

            A 1 Antwort Letzte Antwort
            0
            • ? Ein ehemaliger Benutzer

              @ahnungsbefreit
              Vielen Dank. Hat alles funktioniert. 👍

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

              @kilian-z Der Vollständigkeit halber: Mit diesem Einzeiler kann man die Überprüfung machen, ob ein DP existiert:

              dc28478f-d2d7-4763-8fa5-18453c0c6e1d-image.png

              return existsObject(id);
              

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

              B 1 Antwort Letzte Antwort
              0
              • A Ahnungsbefreit

                @kilian-z Der Vollständigkeit halber: Mit diesem Einzeiler kann man die Überprüfung machen, ob ein DP existiert:

                dc28478f-d2d7-4763-8fa5-18453c0c6e1d-image.png

                return existsObject(id);
                
                B Offline
                B Offline
                Bavarian
                schrieb am zuletzt editiert von
                #30

                Kann man die Objekt ID auch mit einer Variablen angeben?
                So wie ich das im Blockly sehe ist die per Hand fest zu vergeben.

                Ich möchte zB. einen DP anlegen für den jeweils aktuellen Monat.
                Dazu sollte der DP dann idealerweise auch den Monatsnamen bekommen.
                Beispiel:
                0_userdata.0."aktuelles Jahr"."Monat"

                paul53P 1 Antwort Letzte Antwort
                0
                • B Bavarian

                  Kann man die Objekt ID auch mit einer Variablen angeben?
                  So wie ich das im Blockly sehe ist die per Hand fest zu vergeben.

                  Ich möchte zB. einen DP anlegen für den jeweils aktuellen Monat.
                  Dazu sollte der DP dann idealerweise auch den Monatsnamen bekommen.
                  Beispiel:
                  0_userdata.0."aktuelles Jahr"."Monat"

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

                  @bavarian sagte: Kann man die Objekt ID auch mit einer Variablen angeben?

                  Wobei?

                  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

                  B 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @bavarian sagte: Kann man die Objekt ID auch mit einer Variablen angeben?

                    Wobei?

                    B Offline
                    B Offline
                    Bavarian
                    schrieb am zuletzt editiert von
                    #32

                    @paul53
                    Bei dem oben gezeigten Blockly Datenpunktbaustein.
                    1628057033255-241964fa-4fe1-4776-9780-7f4846b30103-image.png

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • B Bavarian

                      @paul53
                      Bei dem oben gezeigten Blockly Datenpunktbaustein.
                      1628057033255-241964fa-4fe1-4776-9780-7f4846b30103-image.png

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

                      @bavarian sagte: Bei dem oben gezeigten Blockly Datenpunktbaustein.

                      Nein, man benötigt eine Javascript-Funktion.

                      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

                      AtifanA 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @bavarian sagte: Bei dem oben gezeigten Blockly Datenpunktbaustein.

                        Nein, man benötigt eine Javascript-Funktion.

                        AtifanA Offline
                        AtifanA Offline
                        Atifan
                        schrieb am zuletzt editiert von
                        #34

                        Hallo, hänge mich hier mal dran. Möchte auch einen Datenpunkt unter "mqtt" erzeugen. Das Blockly funktioniert zwar, aber der Datenpunkt wird unter "javascript.0...." erzeugt und nicht unter "mqtt.0....."
                        Geht das nicht?

                        2b21b908-3c41-4209-8afe-4e0fee8c4668-image.png

                        A paul53P 2 Antworten Letzte Antwort
                        0
                        • AtifanA Atifan

                          Hallo, hänge mich hier mal dran. Möchte auch einen Datenpunkt unter "mqtt" erzeugen. Das Blockly funktioniert zwar, aber der Datenpunkt wird unter "javascript.0...." erzeugt und nicht unter "mqtt.0....."
                          Geht das nicht?

                          2b21b908-3c41-4209-8afe-4e0fee8c4668-image.png

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

                          @atifan Eigene Datenpunkte können und sollen nur unter JavaScript und unter userdata angelegt werden.

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

                          AtifanA 1 Antwort Letzte Antwort
                          0
                          • A Ahnungsbefreit

                            @atifan Eigene Datenpunkte können und sollen nur unter JavaScript und unter userdata angelegt werden.

                            AtifanA Offline
                            AtifanA Offline
                            Atifan
                            schrieb am zuletzt editiert von
                            #36

                            @ahnungsbefreit Hi ja ich weiß, mache ich normal auch so. Aber in dem Fall MUSS der DB unter mqtt damit das NSPanel funktioniert.
                            Da ich den mqtt-Objektbaum aber öfter mal manuell lösche, möchte ich dass ein Script mir dann automatisch den DB wieder erstellt, damit das NSPanel wieder funktioniert.

                            1 Antwort Letzte Antwort
                            0
                            • AtifanA Atifan

                              Hallo, hänge mich hier mal dran. Möchte auch einen Datenpunkt unter "mqtt" erzeugen. Das Blockly funktioniert zwar, aber der Datenpunkt wird unter "javascript.0...." erzeugt und nicht unter "mqtt.0....."
                              Geht das nicht?

                              2b21b908-3c41-4209-8afe-4e0fee8c4668-image.png

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

                              @atifan sagte: Datenpunkt wird unter "javascript.0...." erzeugt und nicht unter "mqtt.0....."

                              Das geht unter "mqtt.0" nur mit setObject().

                              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

                              AtifanA 1 Antwort Letzte Antwort
                              0
                              • paul53P paul53

                                @atifan sagte: Datenpunkt wird unter "javascript.0...." erzeugt und nicht unter "mqtt.0....."

                                Das geht unter "mqtt.0" nur mit setObject().

                                AtifanA Offline
                                AtifanA Offline
                                Atifan
                                schrieb am zuletzt editiert von
                                #38

                                @paul53 Hi Danke! Gibts dafür auch ein Blockly-Funktion? Oder geht das dann nur über JavaScript?

                                paul53P 1 Antwort Letzte Antwort
                                0
                                • AtifanA Atifan

                                  @paul53 Hi Danke! Gibts dafür auch ein Blockly-Funktion? Oder geht das dann nur über JavaScript?

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

                                  @atifan sagte: Gibts dafür auch ein Blockly-Funktion?

                                  Nein, absichtlich nicht, denn damit kann man einiges kaputt machen.
                                  Man muss ein komplexes Objekt übergeben, wofür Blockly auch keine Funktion bereit stellt.

                                  EDIT: Man kann sich mit einer Javascript-Funktion behelfen:

                                  Bild_2022-09-14_212130853.png

                                  Inhalt der Funktion createNSPaneCmd(Typ, Name, Rolle, Default):

                                  const obj = {
                                      type: 'state',
                                      native: {},
                                      common: {
                                          type: Typ,
                                          name: Name,
                                          role: Rolle
                                      }
                                  };
                                  if(Default != undefined) obj.common.def = Default;
                                  const path = 'mqtt.0.NsPanel.cmd.';
                                  if(!existsObject(path + Name)) setObject(path + Name, obj);
                                  

                                  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

                                  AtifanA 1 Antwort Letzte Antwort
                                  0
                                  • paul53P paul53

                                    @atifan sagte: Gibts dafür auch ein Blockly-Funktion?

                                    Nein, absichtlich nicht, denn damit kann man einiges kaputt machen.
                                    Man muss ein komplexes Objekt übergeben, wofür Blockly auch keine Funktion bereit stellt.

                                    EDIT: Man kann sich mit einer Javascript-Funktion behelfen:

                                    Bild_2022-09-14_212130853.png

                                    Inhalt der Funktion createNSPaneCmd(Typ, Name, Rolle, Default):

                                    const obj = {
                                        type: 'state',
                                        native: {},
                                        common: {
                                            type: Typ,
                                            name: Name,
                                            role: Rolle
                                        }
                                    };
                                    if(Default != undefined) obj.common.def = Default;
                                    const path = 'mqtt.0.NsPanel.cmd.';
                                    if(!existsObject(path + Name)) setObject(path + Name, obj);
                                    
                                    AtifanA Offline
                                    AtifanA Offline
                                    Atifan
                                    schrieb am zuletzt editiert von
                                    #40

                                    @paul53 Danke habe es hinbekommen, musste zwar bisschen rumprobieren aber irgendwann ging es :)
                                    Außerdem muss man im Javascript Adapter das Häkchen setzen, dass die Funktion setObject ausgeführt werden darf.

                                    e096172e-7da4-4f72-9e38-4fc3156b6217-image.png

                                    bab57a25-b77b-4e7d-b9de-8d4b31bf7d63-image.png

                                    const obj = {
                                        type: 'state',
                                        native: {},
                                        common: {
                                            type: 'string',
                                            name: 'CustomSend',
                                            role: 'state',
                                        }
                                    };
                                    if(!existsObject('mqtt.0.NsPanel.cmnd.CustomSend')) setObject('mqtt.0.NsPanel.cmnd.CustomSend', obj);
                                    
                                    paul53P 1 Antwort Letzte Antwort
                                    0
                                    • AtifanA Atifan

                                      @paul53 Danke habe es hinbekommen, musste zwar bisschen rumprobieren aber irgendwann ging es :)
                                      Außerdem muss man im Javascript Adapter das Häkchen setzen, dass die Funktion setObject ausgeführt werden darf.

                                      e096172e-7da4-4f72-9e38-4fc3156b6217-image.png

                                      bab57a25-b77b-4e7d-b9de-8d4b31bf7d63-image.png

                                      const obj = {
                                          type: 'state',
                                          native: {},
                                          common: {
                                              type: 'string',
                                              name: 'CustomSend',
                                              role: 'state',
                                          }
                                      };
                                      if(!existsObject('mqtt.0.NsPanel.cmnd.CustomSend')) setObject('mqtt.0.NsPanel.cmnd.CustomSend', obj);
                                      
                                      paul53P Offline
                                      paul53P Offline
                                      paul53
                                      schrieb am zuletzt editiert von
                                      #41

                                      @atifan
                                      Es gibt nur einen Datenpunkt, der per Blockly erzeugt werden muss?

                                      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

                                      AtifanA 1 Antwort Letzte Antwort
                                      0
                                      • paul53P paul53

                                        @atifan
                                        Es gibt nur einen Datenpunkt, der per Blockly erzeugt werden muss?

                                        AtifanA Offline
                                        AtifanA Offline
                                        Atifan
                                        schrieb am zuletzt editiert von
                                        #42

                                        @paul53 Ja, ich brauche nur den einen Datenpunkt mit dem Namen "CustomSend".
                                        Normalerweise muss man diesen Datenpunkt unter MQTT manuell anlegen, damit das NSPanel funktioniert.

                                        Das Problem ist aber, dass ich öfter mal den ganzen Objektbaum unter MQTT lösche, weil dort Geräte mit Hyroglyphen im Namen auftauchen, vermutlich wegen Verbindungsproblemen oder so. Dann wäre der Datenpunkt "CustomSend" auch jedes Mal weg und ich müsste immer daran denken diesen wieder manuell anzulegen, weil ohne den funktioniert das NSPanel nicht.
                                        Deswegen wollte ich das ganze über ein Script lösen.

                                        So wie ich es jetzt gemacht hab funktioniert es jedenfalls wie es soll, habs getestet :)

                                        1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @PatrickFro sagte:

                                          Es geht um Anlage des States als Number

                                          Common muss im JSON-Format übergeben werden. Beispiel für Typ "number":

                                          Blockly_temp.JPG

                                          David G.D Online
                                          David G.D Online
                                          David G.
                                          schrieb am zuletzt editiert von David G.
                                          #43

                                          @paul53 sagte in Datenpunkt erzeugen:

                                          @PatrickFro sagte:

                                          Es geht um Anlage des States als Number

                                          Common muss im JSON-Format übergeben werden. Beispiel für Typ "number":

                                          Blockly_temp.JPG

                                          Hallo,

                                          versuche grad auch einen DP anzulegen.
                                          So ganz klappt noch nicht wie ich möchte.

                                          Generiere mir folgenden String für common:

                                          {"type":"number","states":"0:Sa 06.05.;86400000:So 07.05.;172800000:Mo 08.05."}
                                          

                                          Der DP der generiert wird sieht wie folgt aus:

                                          {
                                            "common": {
                                              "type": "number",
                                              "states": "0:Sa 06.05.;86400000:So 07.05.;172800000:Mo 08.05.",
                                              "name": "0_userdata.0.aber",
                                              "role": "state"
                                            },
                                            "native": {
                                              "type": "number",
                                              "states": "0:Sa 06.05.;86400000:So 07.05.;172800000:Mo 08.05.",
                                              "name": "0_userdata.0.aber",
                                              "role": "state"
                                            },
                                            "type": "state",
                                            "from": "system.adapter.javascript.0",
                                            "user": "system.user.admin",
                                            "ts": 1683359916588,
                                            "_id": "0_userdata.0.aber",
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          

                                          Wenn ich mir den DP unter Objekten anschaue stürzt das Browserfenster ab.

                                          Kleine Zusatzfrage.
                                          Der Block scheint den DP nicht zu überschreiben, wenn ich den DP mit anderen Werten nochmal anlege. Kann man das umgehen?

                                          Zeigt eure Lovelace-Visualisierung klick
                                          (Auch ideal um sich Anregungen zu holen)

                                          Meine Tabellen für eure Visualisierung klick

                                          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

                                          711

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          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