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. Triggern von Scripten

NEWS

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

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

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

Triggern von Scripten

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
5 Beiträge 4 Kommentatoren 4.2k Aufrufe
  • Ä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.
  • H Offline
    H Offline
    hmanfred
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    wenn in einem Script ein Trigger angegeben ist - bedeutet das, dass bei Erfüllung dieses Triggers das Script ausgeführt wird?

    Oder anders gefragt: kann ich die Zustandsänderung eines Objektes direkt als Trigger zum Start eines Scriptes benutzen?

    Hintergrund:

    Ich stelle gerade von CCU1 auf CCU2 um. Die beiden laufen derzeit parallel. Es gibt einige Systemvariablen, die Aktionen auslösen, die in beiden CCU's laufen sollen. Dazu möchte ich - bis die CCU1 ausrangiert wird - einige Systemvariablen von der CCU1 auf die CCU2 "spiegeln".

    Folgenden Script habe ich mir dazu im javascript-adapter geschrieben:

    var value1;
    
    console.log('script SV_Anwesend läuft');
    on({id: "hm-rega.0.41913"/*Anwesend*/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      value1 = getState("hm-rega.0.41913").val;
    });
    setState("hm-rega.1.1881"/*Anwesend*/, value1, true);
    

    Das Script ist aktiv.

    Ich dachte, das Script läuft, sobald die SV Anwesend in der CCU1 (hm-rega.0) ihren Status ändert. Das tut es aber nicht.

    Wo mache ich einen (Denk)Fehler?

    1 Antwort Letzte Antwort
    0
    • Jey CeeJ Online
      Jey CeeJ Online
      Jey Cee
      Developer
      schrieb am zuletzt editiert von
      #2

      Dein Script läuft schon es macht nur einfach nix. Die Log Meldung taucht nur auf wenn dein Script im Javascript adapter aktiviert wird und dann nicht mehr. Das gleiche gilt für dein setState am ende.

      Das was innerhalb deiner Subscription ist wird ausgeführt.

      Dein Script muss dann so aussehen:

      var value1;
      
      on({id: "hm-rega.0.41913"/*Anwesend*/, change: "ne"}, function (obj) {
        console.log('script SV_Anwesend läuft');
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        value1 = getState("hm-rega.0.41913").val;
        setState("hm-rega.1.1881"/*Anwesend*/, value1, true);
      });
      
      

      Persönlicher Support
      Spenden -> paypal.me/J3YC33

      1 Antwort Letzte Antwort
      0
      • H Offline
        H Offline
        hmanfred
        schrieb am zuletzt editiert von
        #3

        Danke!

        So langsam werden die Zusammenhänge klar. :D

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          Das kann man vereinfachen:

          on("hm-rega.0.41913", function (obj) {  
            setState("hm-rega.1.1881"/*Anwesend*/, obj.state.val, true);
          });
          

          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
          • P Offline
            P Offline
            pix
            schrieb am zuletzt editiert von
            #5

            Hallo zusammen,

            wenn ich die Skripte richtig lese, dann wird die Anwesenheit auf CCU2 auf true gesetzt, wenn sich die Anwesenheit auf CCU1 ändert. Also bei jeder Änderung, auch bei Änderung zu false.

            @hmanfred:

            CCU1 auf die CCU2 "spiegeln". `
            Laut iobroker.javascript-Github readme ist die einfachste Art, zwei States zu synchronisieren doch so (vom ersten zum zweiten State):

            on("hm-rega.0.41913"/*Anwesend*/, "hm-rega.1.1881"/*Anwesend*/);
            ````oder für mehr Übersichtlichkeit:
            

            var ccu1anwesenheit = "hm-rega.0.41913"/Anwesend/,
            ccu2anwesenheit = "hm-rega.1.1881"/Anwesend/;

            on(ccu1anwesenheit, ccu2anwesenheit);

            
            Gruß
            
            Pix

            ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

            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

            633

            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