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. Erste Gehversuche…Hilfe

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

Erste Gehversuche…Hilfe

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
16 Beiträge 6 Kommentatoren 2.6k 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.
  • Mr. BurnsM Offline
    Mr. BurnsM Offline
    Mr. Burns
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich versuche mich gerade einzuarbeiten, scheitere aber schon beim einfachsten script.

    Ich möchte anfangen, die CCU zu entlasten und die Pushnachrichten vom iobrocker zu verenden.

    Pushover adapter ist installiert, Testnachricht kommt an.

    Nach fast 2 Tagen lesen hier im Forum und testen verzweifele ich langsam. Ich möchte vorerst NUR wenn die Türe aufgeht eine Nachricht versenden…später dann noch zusätzliche UND und ODER Bedingungen.

    Meine Versuche aus dem Forum zusammen gesucht und versucht anzupassen:

    on ({id: "hm-rpc.1.JEQXXXXXXX.16.STATE"/*Licht Deckenbeleuchtung Wohnzimmer.STATE*/,change: "ne",val: true},
    function(){
    sendTo('pushover.0', { message: 'Das ist eine Mitteilung', title: 'Raspi', priority: 0});
    } 
    );
    
    

    oder

    var TEST = "hm-rpc.1.JEQXXXXXXX.16.STATE";/*Licht Deckenbeleuchtung Wohnzimmer.STATE*/
    
    on ({
    id: TEST,
    change: 'ne',
    val: true
    },
    function(){
    sendTo("pushover.0", {
    subject: "iobroker: ALARM",
    text: "test234...furz"
    });
    } 
    );
    
    var idTerassentuer = "hm-rpc.1.LEQXXXXXXX.5.SENSOR"/*Türkontakt Küche.SENSOR*/
    
    on ({
    id: idTerassentuer,
    change: 'ne',
    val: true
    },
    function(){
    sendTo("pushover.0", {
    subject: "iobroker: ALARM",
    text: "test234..."
    });
    } 
    );
    

    Es wäre nett wenn mir da einer einen Tip geben könnte.

    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #2

      Ich muss wirklich sagen, dass ich selbst immer wieder vergesse, wie man change, val, ne, eq benutzt :lol:

      Deswegen mache ich immer so, dass ich auf Änderung reagiere und da Prüfe was habe ich den:

      on ("hm-rpc.1.JEQXXXXXXX.16.STATE"/*Licht Deckenbeleuchtung Wohnzimmer.STATE*/, function(obj){
            if (obj.state.val) sendTo('pushover.0', {message: 'Das ist eine Mitteilung', title: 'Raspi'});
      });
      
      
      1 Antwort Letzte Antwort
      0
      • Mr. BurnsM Offline
        Mr. BurnsM Offline
        Mr. Burns
        schrieb am zuletzt editiert von
        #3

        Danke für die schnelle Antwort. leider bekomme ich keine Nachricht.

        Kann ich das Script grundsätzlich testen? sowas wie hallo Welt?

        Hab ich das richtig verstanden? Der ON Befehl ist der Trigger, welcher das Script ausführt?

        Vielleicht liegt der Fehler beim Script Editor, welcher nicht richtig funktioniert…?
        1040_bildschirmfoto_2016-03-20_um_16.45.22.png
        1040_bildschirmfoto_2016-03-20_um_16.46.17.png

        1 Antwort Letzte Antwort
        0
        • blauholstenB Offline
          blauholstenB Offline
          blauholsten
          Developer
          schrieb am zuletzt editiert von
          #4

          Hi,

          ja on ist der Trigger.

          Bin mir aus den Stand nicht sicher ob deine Übergabe an Pushover richtig ist. Schau dir mal den Post vom Chef (bluefox) an.

          Als Zusatz gib mal innerhalb der Funktion …. log("hallo Welt "); ..... ein.

          Dann Trigger mal mit deinem State.

          Ach ja und ich würde dir empfehlen nicht deine ganzen Skripte unter global anzulegen.

          Entwickler vom: - Viessman Adapter
          - Alarm Adapter

          1 Antwort Letzte Antwort
          0
          • Mr. BurnsM Offline
            Mr. BurnsM Offline
            Mr. Burns
            schrieb am zuletzt editiert von
            #5

            Hallo,

            Ich habe zuerst die ursprüngliche Pushover übergabe versucht, also mit pushover.0 Deklaration und Titel. hat leider nicht funktioniert. Deshalb hab ich die anderen Varianten ausprobiert die ich im Forum noch gelesen hatte.

            Den Trigger hab ich gesetzt, es kommt weder eine Nachricht über Pushover noch eine Meldung im LOG.

            Im Script-Editor muss die Position (Geo-Daten) nicht zwingend eingetragen sein, wenn diese Funktionen nicht verwendet werden, oder?

            Warum sollten die Skripte nicht im Ordner Global sein? -Ich hab nur ein Script…die anderen sind Abwandlungen...
            1040_bildschirmfoto_2016-03-20_um_17.58.52.png
            1040_bildschirmfoto_2016-03-20_um_18.01.48.png
            1040_bildschirmfoto_2016-03-20_um_18.03.21.png

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

              @Mr. Burns:

              Den Trigger hab ich gesetzt, es kommt weder eine Nachricht über Pushover noch eine Meldung im LOG. `
              log("…") muss klein geschrieben werden. Hast Du für den Screen shot extra die Seriennummer durch xxxxx ersetzt und anschließend wieder korrigiert ?
              @Mr. Burns:

              Im Script-Editor muss die Position (Geo-Daten) nicht zwingend eingetragen sein, wenn diese Funktionen nicht verwendet werden, oder? `
              Nein, muss nicht.
              @Mr. Burns:

              Warum sollten die Skripte nicht im Ordner Global sein? -Ich hab nur ein Script…die anderen sind Abwandlungen... `
              Globale Scripte sollten globale Funktionen enthalten (also niemals konkrete Objekt-ID). Bei Nutzung mehrerer Funktionen kommt man schnell mit den Funktionsnamen in Konflikt, wenn sie alle global sind.

              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
              • Mr. BurnsM Offline
                Mr. BurnsM Offline
                Mr. Burns
                schrieb am zuletzt editiert von
                #7

                Hallo,

                danke für die viele hilfe.

                > log("…") muss klein geschrieben werden.
                Erledigt. Funktioniert leider aber trotzdem nicht.

                > Hast Du für den Screen shot extra die Seriennummer durch xxxxx ersetzt und anschließend wieder korrigiert ?
                Jawohl!

                Wie kann ich testen, ob der Adapter defekt ist? einfach neu installieren?

                1 Antwort Letzte Antwort
                0
                • blauholstenB Offline
                  blauholstenB Offline
                  blauholsten
                  Developer
                  schrieb am zuletzt editiert von
                  #8

                  @Mr. Burns:

                  Wie kann ich testen, ob der Adapter defekt ist? einfach neu installieren? `

                  Schreib in einem Skript

                  log("test ob ich funktioniere")
                  

                  und drück dann auf Speichern und auf play….

                  Entwickler vom: - Viessman Adapter
                  - Alarm Adapter

                  1 Antwort Letzte Antwort
                  0
                  • Mr. BurnsM Offline
                    Mr. BurnsM Offline
                    Mr. Burns
                    schrieb am zuletzt editiert von
                    #9

                    Habe die Zeile durch ein ; abgeschlossen, aber kein Eintrag im LOG.

                    Adapter sowie raspberry neustarten hat leider auch nicht geholfen.

                    Edit:

                    Habe die Instanz des Adapters deinstalliert und den Adapter anschließend gelöscht. Danach neu installiert.

                    Leider funktioniert nicht mal die eine Zeile des LOG.

                    Ich werde das Gefühl nicht los, das ich etwas falsch mache.

                    Edit2:

                    Hab den adapter noch einmal deinstalliert. Gelöscht und den raspberry neu gestartet.

                    Jetzt funktioniert es. Danke für euere Unterstützung.

                    1 Antwort Letzte Antwort
                    0
                    • blauholstenB Offline
                      blauholstenB Offline
                      blauholsten
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      Dann bin ich leider raus, tut mir Leid :?

                      Entwickler vom: - Viessman Adapter
                      - Alarm Adapter

                      1 Antwort Letzte Antwort
                      0
                      • Mr. BurnsM Offline
                        Mr. BurnsM Offline
                        Mr. Burns
                        schrieb am zuletzt editiert von
                        #11

                        Frohe Ostern!

                        tschuldigung, dass ich schon wieder nerve, aber bin gerade dabei eine und Verknüpfung reinzubasteln und bekomme es nicht hin.

                        Das funktioniert: (Danke nochmal für die Hilfe)

                        var TAG1 = "hm-rpc.1.JEQ0xxxxxx.16.STATE";
                        var TAG2 = "hm-rega.0.xxx";
                        var text = "Die Mitteilung";
                        
                        on (TAG1,function(obj){
                              if (obj.state.val)
                              sendTo('pushover.0', text);
                        });
                        

                        Aber sowas nicht:

                        var TAG1 = "hm-rpc.1.JEQxxxxxx.16.STATE";
                        var TAG2 = "hm-rega.0.xxx";
                        var text = "Die Mitteilung";
                        
                        on (TAG1 === true && TAG2 === true,function(obj){
                              if (obj.state.val)
                              sendTo('pushover.0', text);
                        });
                        

                        Das auch nicht:

                        var TAG1 = "hm-rpc.1.JEQxxxxxx.16.STATE";
                        var TAG2 = "hm-rega.0.xxx";
                        var text = "Die Mitteilung";
                        
                        on (TAG1,function(obj){
                              if (obj.state.val === true && TAG2 === true)
                              sendTo('pushover.0', text);
                        });
                        
                        var TAG1 = "hm-rpc.1.JEQxxxxxx.16.STATE";
                        var TAG2 = "hm-rega.0.xxx";
                        var text = "Die Mitteilung";
                        
                        on (TAG1,function(obj){
                              if (obj.state.val){if (TAG1 ===true && TAG2 === true),
                              sendTo('pushover.0', text);
                        }});
                        

                        Und ich steh echt auf dem Schlauch…muss wohl dazu sagen, dass mein C echt unterirdisch ist.

                        Wenn mir da jemand auf den rechten Pfad helfen würde.

                        Gruß

                        Thomas

                        BTW:

                        Scripte dürfen keinesfalls in global abgelegt werden…dann werden Sie wohl nicht abgearbeitet...hätte ich mal früher drauf gehört.

                        1 Antwort Letzte Antwort
                        0
                        • blauholstenB Offline
                          blauholstenB Offline
                          blauholsten
                          Developer
                          schrieb am zuletzt editiert von
                          #12

                          Hi,

                          probier mal

                          if(obj.newState.val && getState(TAG2).val)
                          

                          Entwickler vom: - Viessman Adapter
                          - Alarm Adapter

                          1 Antwort Letzte Antwort
                          0
                          • htreckslerH Offline
                            htreckslerH Offline
                            htrecksler
                            Forum Testing
                            schrieb am zuletzt editiert von
                            #13

                            ` > on (TAG1,function(obj){

                            if (obj.state.val === true && TAG2 === true)

                            sendTo('pushover.0', text);

                            }); `

                            ich denke, da fehlen die Klammern… (Fall ich auch ständig 'drauf rein)

                             if ((obj.state.val === true) && (TAG2 === true))
                            
                            

                            Gruss Hermann

                            Gruss Hermann

                            ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

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

                              @Mr. Burns:

                              Aber sowas nicht:

                              var TAG1 = "hm-rpc.1.JEQxxxxxx.16.STATE";
                              var TAG2 = "hm-rega.0.xxx";
                              var text = "Die Mitteilung";
                              
                              on (TAG1 === true && TAG2 === true,function(obj){
                                    if (obj.state.val)
                                    sendTo('pushover.0', text);
                              });
                              ```` `  
                              

                              Empfehlung:

                              var TAG1 = "hm-rpc.1.JEQxxxxxx.16.STATE";
                              var TAG2 = "hm-rega.0.xxx";
                              var text = "Die Mitteilung";
                              var t1;
                              var t2;
                              
                              function t12() {
                              	if (t1 && t2) sendTo('pushover.0', text);
                              }
                              
                              on(TAG1, function(dp) {
                              	t1 = dp.state.val;
                              	t12();
                              });
                              on(TAG2, function(dp) {
                              	t2 = dp.state.val;
                              	t12();
                              });
                              
                              

                              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
                              • Mr. BurnsM Offline
                                Mr. BurnsM Offline
                                Mr. Burns
                                schrieb am zuletzt editiert von
                                #15

                                Danke für eure Unterstützung!

                                Dieses Script funktioniert:

                                if(obj.newState.val && getState(TAG2).val)
                                

                                Dieser:

                                if ((obj.state.val === true) && (TAG2 === true))
                                

                                und dieser:

                                var TAG1 = "hm-rpc.1.JEQxxxxxx.16.STATE";
                                var TAG2 = "hm-rega.0.xxx";
                                var text = "Die Mitteilung";
                                var t1;
                                var t2;
                                
                                function t12() {
                                   if (t1 && t2) sendTo('pushover.0', text);
                                }
                                
                                on(TAG1, function(dp) {
                                   t1 = dp.state.val;
                                   t12();
                                });
                                on(TAG2, function(dp) {
                                   t2 = dp.state.val;
                                   t12();
                                });
                                

                                leider nicht.

                                Ich habe ein paar Fälle, wo ich den negativen Status abfragen muss. Also bei "false" auslösen oder prüfen auf "false" bzw. ODER Verknüpfungen.

                                wie läßt sich das realisieren?

                                so hat es nicht funktioniert:

                                if(obj.newState.val && getState(TAG2 === true).val)
                                

                                oder

                                if(obj.newState.val && getState(TAG2 === false).val)
                                
                                1 Antwort Letzte Antwort
                                0
                                • V Offline
                                  V Offline
                                  versteckt
                                  schrieb am zuletzt editiert von
                                  #16

                                  Hallo,

                                  du musst zuerst den Wert holen und kannst ihn dann prüfen:

                                  FALSCH:

                                  if(obj.newState.val && getState(TAG2 === false).val)

                                  RICHTIG:

                                  if(obj.newState.val && getState(TAG2).val === false)

                                  Mit getState(XXX).val bekommst du den Inhalt der Variable

                                  und danach auf Inhalt prüfen.

                                  LG Christian

                                  Raspi 1, Raspi 2, iobroker, Mac Mini: alles mit aktueller ioBroker Version

                                  homegear für Homematic und MAX!

                                  occ, zWave, rpi, hmm und homekit Entwickler

                                  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

                                  325

                                  Online

                                  32.5k

                                  Benutzer

                                  81.7k

                                  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