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. ALIAS Variablen als globale Variablen nutzen + schalten?

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    14
    1
    187

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

ALIAS Variablen als globale Variablen nutzen + schalten?

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
38 Beiträge 2 Kommentatoren 937 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.
  • ? Ein ehemaliger Benutzer

    @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

    Welche Version vom js-controller ?

    3.1.6

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

    @Pete0815 sagte:

    3.1.6

    Diese Version funktioniert bei mir.

    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
    • paul53P paul53

      @Pete0815 sagte:

      3.1.6

      Diese Version funktioniert bei mir.

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

      @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

      @Pete0815 sagte:

      3.1.6

      Diese Version funktioniert bei mir.

      Ok, mal den iobroker neustarten?

      paul53P 1 Antwort Letzte Antwort
      0
      • ? Ein ehemaliger Benutzer

        @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

        @Pete0815 sagte:

        3.1.6

        Diese Version funktioniert bei mir.

        Ok, mal den iobroker neustarten?

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

        @Pete0815 sagte:

        mal den iobroker neustarten?

        Ein Versuch schadet 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

        ? 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @Pete0815 sagte:

          mal den iobroker neustarten?

          Ein Versuch schadet nicht.

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

          @paul53

          Jaein. Habe gerade den Switch_Input probiert der sonst noch nicht in einer Logik (Skript) Verwendung findet also nur der Button und der ALIAS "aktiv" ist.

          Den MQTT DP von 0 auf 1 gesetzt. Funktioniert und setzt auch den ALIAS.
          Wichtig, ich muß den MQTT auf 0 oder 1 setzen, nicht true oder false.

          Der ALIAS wird auf true oder false gesetzt. Setze ich diesen manuell. wird der MQTT DP aber auf false oder true gesetzt. Nicht 0 oder 1. Ist das vielleicht das Problem?

          Edit: Wenn ich den ALIAS nicht über das Kästchen mit Haken auf true oder false setze, sondern in das Pop-UP Window 0 oder 1 reinschreibe. Setzt er den ALIAS auf TRUE/false und den MQTT auf 0 oder 1. mmmh

          Muss ich also evtl. in den Skripten hier nicht auf wahr oder falsch steuern sondern auf 0 oder 1 setzen?

          paul53P 1 Antwort Letzte Antwort
          0
          • ? Ein ehemaliger Benutzer

            @paul53

            Jaein. Habe gerade den Switch_Input probiert der sonst noch nicht in einer Logik (Skript) Verwendung findet also nur der Button und der ALIAS "aktiv" ist.

            Den MQTT DP von 0 auf 1 gesetzt. Funktioniert und setzt auch den ALIAS.
            Wichtig, ich muß den MQTT auf 0 oder 1 setzen, nicht true oder false.

            Der ALIAS wird auf true oder false gesetzt. Setze ich diesen manuell. wird der MQTT DP aber auf false oder true gesetzt. Nicht 0 oder 1. Ist das vielleicht das Problem?

            Edit: Wenn ich den ALIAS nicht über das Kästchen mit Haken auf true oder false setze, sondern in das Pop-UP Window 0 oder 1 reinschreibe. Setzt er den ALIAS auf TRUE/false und den MQTT auf 0 oder 1. mmmh

            Muss ich also evtl. in den Skripten hier nicht auf wahr oder falsch steuern sondern auf 0 oder 1 setzen?

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

            @Pete0815 sagte:

            Wichtig, ich muß den MQTT auf 0 oder 1 setzen, nicht true oder false.

            Dann wandele mit common.alias.read und common.alias.write .

                "alias": {
                  "id": "mqtt.0.HeizKeller.Switch_Output.State",
                  "read": "!!val",
                  "write": "val ? 1 : 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 Antwort Letzte Antwort
            0
            • paul53P paul53

              @Pete0815 sagte:

              Wichtig, ich muß den MQTT auf 0 oder 1 setzen, nicht true oder false.

              Dann wandele mit common.alias.read und common.alias.write .

                  "alias": {
                    "id": "mqtt.0.HeizKeller.Switch_Output.State",
                    "read": "!!val",
                    "write": "val ? 1 : 0"
                  }
              
              ? Offline
              ? Offline
              Ein ehemaliger Benutzer
              schrieb am zuletzt editiert von Ein ehemaliger Benutzer
              #29

              @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

              @Pete0815 sagte in ALIAS Variablen als globale Variablen nutzen + schalten?:

              Wichtig, ich muß den MQTT auf 0 oder 1 setzen, nicht true oder false.

              Welchen Typ haben die MQTT-Datenpunkte ? Falls "number", dann wandele mit common.alias.read und common.alias.write .

                  "alias": {
                    "id": "mqtt.0.HeizKeller.Switch_Output.State",
                    "read": "!!val",
                    "write": "val ? 1 : 0"
                  }
              

              Die MQTT sind vom typ string. Hieraus auch meine Intention ALIAS zu verwenden, damit ich direkt bolean werte habe für die skripte.

              
                "common": {
                  "name": "HeizKeller/Switch_Input/State",
                  "write": true,
                  "read": true,
                  "role": "variable",
                  "desc": "mqtt server variable",
                  "type": "string"
                },
                "native": {
                  "topic": "HeizKeller/Switch_Input/State"
                },
                "type": "state",
                "from": "system.adapter.mqtt.0",
                "user": "system.user.admin",
                "ts": 1599421923874,
                "_id": "mqtt.0.HeizKeller.Switch_Input.State",
                "acl": {
                  "object": 1636,
                  "state": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                }
              }
              
              paul53P 1 Antwort Letzte Antwort
              0
              • ? Ein ehemaliger Benutzer

                @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                @Pete0815 sagte in ALIAS Variablen als globale Variablen nutzen + schalten?:

                Wichtig, ich muß den MQTT auf 0 oder 1 setzen, nicht true oder false.

                Welchen Typ haben die MQTT-Datenpunkte ? Falls "number", dann wandele mit common.alias.read und common.alias.write .

                    "alias": {
                      "id": "mqtt.0.HeizKeller.Switch_Output.State",
                      "read": "!!val",
                      "write": "val ? 1 : 0"
                    }
                

                Die MQTT sind vom typ string. Hieraus auch meine Intention ALIAS zu verwenden, damit ich direkt bolean werte habe für die skripte.

                
                  "common": {
                    "name": "HeizKeller/Switch_Input/State",
                    "write": true,
                    "read": true,
                    "role": "variable",
                    "desc": "mqtt server variable",
                    "type": "string"
                  },
                  "native": {
                    "topic": "HeizKeller/Switch_Input/State"
                  },
                  "type": "state",
                  "from": "system.adapter.mqtt.0",
                  "user": "system.user.admin",
                  "ts": 1599421923874,
                  "_id": "mqtt.0.HeizKeller.Switch_Input.State",
                  "acl": {
                    "object": 1636,
                    "state": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator"
                  }
                }
                
                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von paul53
                #30

                @Pete0815 sagte:

                Die MQTT sind vom typ string.

                Mit den Werten "0" und "1" ? Dann sollte die Read-Wandlung eigentlich automatisch erfolgen. Aber nicht write:

                    "alias": {
                      "id": "mqtt.0.HeizKeller.Switch_Output.State",
                      "write": "val ? String(1) : String(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 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @Pete0815 sagte:

                  Die MQTT sind vom typ string.

                  Mit den Werten "0" und "1" ? Dann sollte die Read-Wandlung eigentlich automatisch erfolgen. Aber nicht write:

                      "alias": {
                        "id": "mqtt.0.HeizKeller.Switch_Output.State",
                        "write": "val ? String(1) : String(0)"
                      }
                  
                  ? Offline
                  ? Offline
                  Ein ehemaliger Benutzer
                  schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                  #31

                  @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                  @Pete0815 sagte:

                  Die MQTT sind vom typ string.

                  Mit den Werten "0" und "1" ? Dann sollte die Read-Wandlung eigentlich automatisch erfolgen. Aber nicht write:

                      "alias": {
                        "id": "mqtt.0.HeizKeller.Switch_Output.State",
                        "write": "val ? '1' : '0'"
                      }
                  

                  OK, verstehe. habe gerade einen Test gemacht.

                  Ausgangszustand: Alle ALIAS auf false und MQTT auf 0

                  Habe dann den Push Button Output gedrückt und da der Füllstand es derzeit nicht erlaubt, überschreibt ein Script dies wieder und triggert nochmal diesen Push Button über den ALIAS. Ergebnis, dass im MQTT DP jetzt ein false steht wo eine 0 stehen müßte. Also genau wie du sagst, die Schreibrichtung vom ALIAS auf den MQTT wandelt nicht.

                  Kopiere ich die Zeile 3 jetzt einfach bei mir im ALIAS dazu?

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • ? Ein ehemaliger Benutzer

                    @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                    @Pete0815 sagte:

                    Die MQTT sind vom typ string.

                    Mit den Werten "0" und "1" ? Dann sollte die Read-Wandlung eigentlich automatisch erfolgen. Aber nicht write:

                        "alias": {
                          "id": "mqtt.0.HeizKeller.Switch_Output.State",
                          "write": "val ? '1' : '0'"
                        }
                    

                    OK, verstehe. habe gerade einen Test gemacht.

                    Ausgangszustand: Alle ALIAS auf false und MQTT auf 0

                    Habe dann den Push Button Output gedrückt und da der Füllstand es derzeit nicht erlaubt, überschreibt ein Script dies wieder und triggert nochmal diesen Push Button über den ALIAS. Ergebnis, dass im MQTT DP jetzt ein false steht wo eine 0 stehen müßte. Also genau wie du sagst, die Schreibrichtung vom ALIAS auf den MQTT wandelt nicht.

                    Kopiere ich die Zeile 3 jetzt einfach bei mir im ALIAS dazu?

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

                    @Pete0815 sagte in ALIAS Variablen als globale Variablen nutzen + schalten?:

                    Kopiere ich die Zeile 3 jetzt einfach bei mir im ALIAS dazu?

                    Ja. Allerdings bin ich mir nicht ganz sicher, ob es so funktioniert. Falls nicht, dann evtl. so:

                          "write": "val ? String(1) : String(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

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @Pete0815 sagte in ALIAS Variablen als globale Variablen nutzen + schalten?:

                      Kopiere ich die Zeile 3 jetzt einfach bei mir im ALIAS dazu?

                      Ja. Allerdings bin ich mir nicht ganz sicher, ob es so funktioniert. Falls nicht, dann evtl. so:

                            "write": "val ? String(1) : String(0)"
                      
                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #33

                      @paul53
                      Hab es gerade getestet: Die erste Version funktioniert nicht. Also:

                            "write": "val ? String(1) : String(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 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @paul53
                        Hab es gerade getestet: Die erste Version funktioniert nicht. Also:

                              "write": "val ? String(1) : String(0)"
                        
                        ? Offline
                        ? Offline
                        Ein ehemaliger Benutzer
                        schrieb am zuletzt editiert von
                        #34

                        @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                        "val ? String(1) : String(0)"

                        Danke. Probiere gerade noch und sehe komische Effekte wie selbständiges setzen der ALIAS auf true und true/false taucht dann doch wieder im MQTT DP auf. Teste aber noch um mir sicher zu sein was genau passiert

                        ? 1 Antwort Letzte Antwort
                        0
                        • ? Ein ehemaliger Benutzer

                          @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                          "val ? String(1) : String(0)"

                          Danke. Probiere gerade noch und sehe komische Effekte wie selbständiges setzen der ALIAS auf true und true/false taucht dann doch wieder im MQTT DP auf. Teste aber noch um mir sicher zu sein was genau passiert

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

                          Also ich glaube bei mir funktioniert, dass noch nicht.
                          Habe wieder den Testfall mit dem Switch_Output getestet. Habe manuell den Push Button gedrückt. Dies löst MQTT DP und dann den Alias aus. Dadurch beginnt das Motorventil am Ausgang zu drehen. Es findet eine zyklische Füllstandsmessung statt und die Logik "Überlaufschutz" löst ALIAS Switch_Output aus um den Vorgang wieder umzukehren/zu verhindern.

                          Die Logik dazu sieht so aus:
                          940be658-3a5b-46ab-b07e-189a4bd77d21-grafik.png

                          Der ALIAS wie besprochen jetzt:

                          {
                            "from": "system.adapter.javascript.0",
                            "user": "system.user.admin",
                            "ts": 1599924788868,
                            "common": {
                              "name": "HeizKeller/Switch_Output/State",
                              "write": "val ? String(1) : String(0)",
                              "role": "switch",
                              "desc": "mqtt server variable",
                              "type": "boolean",
                              "read": true,
                              "alias": {
                                "id": "mqtt.0.HeizKeller.Switch_Output.State"
                              }
                            },
                            "native": {},
                            "acl": {
                              "object": 1636,
                              "owner": "system.user.admin",
                              "ownerGroup": "system.group.administrator",
                              "state": 1636
                            },
                            "_id": "alias.0.HeizKeller.Pumpe.Switch_Output",
                            "type": "state"
                          }
                          

                          Am Ende sieht der Zustand so aus:
                          fdd2d07e-bdea-4b70-ba5f-8e8d9fcf02bc-grafik.png

                          Warum der ALIAS auf true und der MQTT DP auf false und nicht auf 0 ist so nicht gewollt.

                          paul53P 1 Antwort Letzte Antwort
                          0
                          • ? Ein ehemaliger Benutzer

                            Also ich glaube bei mir funktioniert, dass noch nicht.
                            Habe wieder den Testfall mit dem Switch_Output getestet. Habe manuell den Push Button gedrückt. Dies löst MQTT DP und dann den Alias aus. Dadurch beginnt das Motorventil am Ausgang zu drehen. Es findet eine zyklische Füllstandsmessung statt und die Logik "Überlaufschutz" löst ALIAS Switch_Output aus um den Vorgang wieder umzukehren/zu verhindern.

                            Die Logik dazu sieht so aus:
                            940be658-3a5b-46ab-b07e-189a4bd77d21-grafik.png

                            Der ALIAS wie besprochen jetzt:

                            {
                              "from": "system.adapter.javascript.0",
                              "user": "system.user.admin",
                              "ts": 1599924788868,
                              "common": {
                                "name": "HeizKeller/Switch_Output/State",
                                "write": "val ? String(1) : String(0)",
                                "role": "switch",
                                "desc": "mqtt server variable",
                                "type": "boolean",
                                "read": true,
                                "alias": {
                                  "id": "mqtt.0.HeizKeller.Switch_Output.State"
                                }
                              },
                              "native": {},
                              "acl": {
                                "object": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator",
                                "state": 1636
                              },
                              "_id": "alias.0.HeizKeller.Pumpe.Switch_Output",
                              "type": "state"
                            }
                            

                            Am Ende sieht der Zustand so aus:
                            fdd2d07e-bdea-4b70-ba5f-8e8d9fcf02bc-grafik.png

                            Warum der ALIAS auf true und der MQTT DP auf false und nicht auf 0 ist so nicht gewollt.

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

                            @Pete0815 sagte:

                            Der ALIAS wie besprochen jetzt:

                            Es fehlt common.alias.write.

                                "alias": {
                                  "id": "mqtt.0.HeizKeller.Switch_Output.State",
                                  "write": "val ? String(1) : String(0)"
                                }
                            

                            Zeile 7 muss lauten:

                                "write": true,
                            

                            Im Blockly schaltest Du den Alias-DP ?

                            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
                            • paul53P paul53

                              @Pete0815 sagte:

                              Der ALIAS wie besprochen jetzt:

                              Es fehlt common.alias.write.

                                  "alias": {
                                    "id": "mqtt.0.HeizKeller.Switch_Output.State",
                                    "write": "val ? String(1) : String(0)"
                                  }
                              

                              Zeile 7 muss lauten:

                                  "write": true,
                              

                              Im Blockly schaltest Du den Alias-DP ?

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

                              @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                              @Pete0815 sagte:

                              Der ALIAS wie besprochen jetzt:

                              Es fehlt common.alias.write.

                                  "alias": {
                                    "id": "mqtt.0.HeizKeller.Switch_Output.State",
                                    "write": "val ? String(1) : String(0)"
                                  }
                              

                              Achso, falsch verstanden und das write in Zeile 7 modifiziert. den oben Block komplett einfügen.

                              Zeile 7 muss lauten:

                                  "write": true,
                              

                              Mache ich rückgängig.

                              Im Blockly schaltest Du den Alias-DP ?

                              Ja, alias.0.HeizKeller.Pumpe.Switch_Output

                              ? 1 Antwort Letzte Antwort
                              0
                              • ? Ein ehemaliger Benutzer

                                @paul53 said in ALIAS Variablen als globale Variablen nutzen + schalten?:

                                @Pete0815 sagte:

                                Der ALIAS wie besprochen jetzt:

                                Es fehlt common.alias.write.

                                    "alias": {
                                      "id": "mqtt.0.HeizKeller.Switch_Output.State",
                                      "write": "val ? String(1) : String(0)"
                                    }
                                

                                Achso, falsch verstanden und das write in Zeile 7 modifiziert. den oben Block komplett einfügen.

                                Zeile 7 muss lauten:

                                    "write": true,
                                

                                Mache ich rückgängig.

                                Im Blockly schaltest Du den Alias-DP ?

                                Ja, alias.0.HeizKeller.Pumpe.Switch_Output

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

                                @paul53
                                jetzt schaut es gut aus! Erster Test war erfolgreich! Danke :+1: :blush:

                                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

                                541

                                Online

                                32.7k

                                Benutzer

                                82.4k

                                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