Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. IoBroker.homepilot Adapter

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    IoBroker.homepilot Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      pix last edited by

      Kannst du mir mal die JSON schicken, wenn der Aktor ausgeschaltet ist?

      Pix

      Gesendet mit Tapatalk

      1 Reply Last reply Reply Quote 0
      • L
        leo013 last edited by

        Hallo Pix,

        neue Version ist installiert.

        Danke für deine Widgets, diese funktionieren ohne Probleme, Gurtwickler fahren in die Endposition über "hoch stop runter"

        Nebeneffekt war , das ich mal lerne wie widgets importiert werden 😉

        Ich denke es liegt an dem von mir benutzten widget "window and shutter"

        Keine Ahnung worin der Unterschied zu Dashui hier liegt.

        Weiterhin herzlichen Dank für deine Zuarbeit!

        Gruß

        Wolfgang

        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          Halbzeitpause. Kurze Antwort:

          Ich nutze das Metro Widget (ggf. Zusatzadapter vis-metro installieren) mit dem Schieber und Statusanzeige für die Rollläden und bin sehr zufrieden. Zusammen mit einem weiteren Widget für das Level in Prozent und dem Lastchange hat man alles im Blick.

          Widget:
          261_bildschirmfoto_2016-06-18_um_21.53.24.jpg

          [{"tpl":"tplMetroTileShutter","data":{"oid":"homepilot.0.devices.RolloTronStandard.10002.level_inverted","visibility-cond":"==","visibility-val":1,"bg_class":"bg-transparent","brand_bg_class":"","oid-working":"homepilot.0.devices.RolloTronStandard.10002.level_inverted","label":"Rollladen rechts","min":"0","max":"100","name":"Rollladen rechts Metro","sliderCompleteColor":"#506ce7","sliderColor":"#e6e6e6","sliderMarkerColor":"","step":"1","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"comment":"in Arbeit checken!!!!"},"style":{"left":"528px","top":"285px","z-index":"25","height":"137px","width":"313px"},"widgetSet":"metro"},{"tpl":"tplValueFloat","data":{"oid":"homepilot.0.devices.RolloTronStandard.10002.level_inverted","visibility-cond":"==","visibility-val":1,"is_comma":false,"factor":"1","digits":"0","html_append_singular":" %","html_append_plural":" %","name":"Rollladen rechts Zahl","is_tdp":"false","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false},"style":{"left":"627px","top":"333px","color":"rgba(250,250,250,1)","text-align":"right","font-family":"RobotoCondensed-Regular, Futura","width":"68px","height":"18px","z-index":"26"},"widgetSet":"basic"},{"tpl":"tplValueLastchange","data":{"oid":"homepilot.0.devices.RolloTronStandard.10002.status_changed","visibility-cond":"==","visibility-val":1,"gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"format_date":"DD.MM.YYYY hh:mm:ss","name":"Rollladen rechts Lastchange"},"style":{"left":"700px","top":"403px","z-index":"26","color":"rgba(250,250,250,1)","text-align":"right","font-family":"RobotoCondensed-Regular, Futura","width":"132px","height":"17px","font-size":"13px"},"widgetSet":"basic"}]
          

          Gruß

          Pix

          1 Reply Last reply Reply Quote 0
          • P
            pix last edited by

            @pustekuchen:

            EDIT: Wenn ich beim Schaltaktor den Datenpunkt LEVEL mit "0" füttere kommt im Log folgendes: "warn Wrong type of data input. Please try again" `
            Bist du sicher?

            Der Code zur Überprüfung des input ist ja so:

            ! ````
            if (controller == 'level') { // control via level e.g. RolloTronStandar.level
            // check if input number is between 0 an 100
            if (input.search(/(?:\b|-)([1-9]{1,2}[0]?|100)\b/gmi) != -1) { // 0 to 100 https://regex101.com/r/mN1iT5/6#javascript
            valid = true;
            url = 'http://' + ip + '/deviceajax.do?cid=9&did=' + deviceid + '&goto=' + input + '&command=1';
            } else valid = false;
            } else if (controller == 'level_inverted') { // control via inverted level e.g. RolloTronStandar.level (like Homematic 100% up, 0% down)
            // check if input number is between 0 an 100
            if (input.search(/(?:\b|-)([1-9]{1,2}[0]?|100)\b/gmi) != -1) { // 0 to 100 https://regex101.com/r/mN1iT5/6#javascript
            valid = true;
            url = 'http://' + ip + '/deviceajax.do?cid=9&did=' + deviceid + '&goto=' + (100 - parseInt(input,10)) + '&command=1';
            } else valid = false;
            } else if (controller == 'state') { // control via state e.g. Universal-Aktor switch (100 ist true, <100 is false);
            if (input.search(/(true)|(false)\b/gmi) != -1) { // check if "true" or "false"
            valid = true;
            if (input || input === 'true') { // switch is on
            url = 'http://' + ip + '/deviceajax.do?cid=9&did=' + deviceid + '&goto=100&command=1';
            } else url = 'http://' + ip + '/deviceajax.do?cid=9&did=' + deviceid + '&goto=0&command=1'; // switch is off
            adapter.log.debug('Input: ' + input + ' URL: ' + url);
            } else valid = false;
            }

            
            Also 0 ist eindeutig erlaubt. Sicher, dass du auf dem richtigen Datenpunkt bist?
            
            Wenn du das o.g. Widget nutzt, kannst du bei Min ja 0 und Max ja 100 eingeben und als OID LEVEL. Dann braucht dar Adapter ja nicht umrechnen.
            
            Sonst geht vielleicht mal dieses Widget, auch wenn es nicht so schön ist ;) (OID state)
            

            [{"tpl":"tplFancyToggleswitch","data":{"oid":"nothing_selected","visibility-cond":"==","visibility-val":1,"text_true":"true","text_false":"false","width":"40","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"highlight_switch":false,"test":false},"style":{"left":"436px","top":"492px"},"widgetSet":"fancyswitch"}]

            
            Gruß
            
            Pix
            1 Reply Last reply Reply Quote 0
            • P
              pustekuchen last edited by

              @pix:

              Kannst du mir mal die JSON schicken, wenn der Aktor ausgeschaltet ist?

              Pix `

              {  "response": "get_visible_devices",  "status": "ok",  "devices": [    {      "did": 10009,      "name": "Gartenbeleuchtung",      "description": " ",      "initialized": 1,      "position": 0,      "productName": "Universal-Aktor",      "serial": "43",      "statusesMap": {        "Position": 0,        "Manuellbetrieb": 0      },      "status_changed": 1466276021,      "deviceGroup": 1,      "iconSet": {        "name": "Ein-Aus-Schalter",        "description": "Ein- Aus-Schalter Icon-Set",        "strMin": "An",        "strMax": "Aus",        "valMax": 100,        "valMin": 0,        "sprite": {          "imageUri": "images/sets/ein-aus-schalter1.png",          "numTiles": 2        },        "k": "iconset5"      },      "iconSetInverted": 0,      "paired": 0,      "statusValid": true,      "uid": "43 XX XX",      "visible": true,      "groups": [        5003      ],      "favoredId": 5013,      "properties": {        "generic": 3,        "wind": 3,        "trigger": 3,        "closingContact": 3,        "dusk": 3,        "smoke": 3,        "sun": 3,        "temperature": 3,        "manual": 3,        "time": 2,        "dawn": 3,        "dust": 3,        "favored": 0,        "smartphone": 3,        "motion": 3,        "temperator": 3,        "warning": 3,        "rain": 3,        "states": [          {            "cfgKey": "setAutomationOverall",            "cfgId": 99,            "state": 0          },          {            "cfgKey": "setSunAuto",            "cfgId": 105,            "state": 0          },          {            "cfgKey": "setEveningAuto",            "cfgId": 107,            "state": 1          },          {            "cfgKey": "setTimeAuto",            "cfgId": 101,            "state": 1          },          {            "cfgKey": "setMorningAuto",            "cfgId": 103,            "state": 1          }        ]      },      "sortId": 718,      "sTypes": [],      "version": "2.2",      "sync": -2147480277,      "messages": [],      "hasErrors": 0,      "autos": [        3,        2,        0,        1,        4      ]    },   
              
              1 Reply Last reply Reply Quote 0
              • P
                pustekuchen last edited by

                @pix:

                    } else if (controller == 'state') { // control via state e.g. Universal-Aktor switch (100 ist true, <100 is false);
                        if (input.search(/(true)|(false)\b/gmi) != -1) { // check if "true" or "false"
                            valid = true;
                            if (input || input === 'true') { // switch is on
                                url = 'http://' + ip + '/deviceajax.do?cid=9&did=' + deviceid + '&goto=100&command=1';
                            } else url = 'http://' + ip + '/deviceajax.do?cid=9&did=' + deviceid + '&goto=0&command=1'; // switch is off
                            adapter.log.debug('Input: ' + input + ' URL: '  + url);
                        } else valid = false;
                    }
                ```` `  
                

                Habe im Code gesehen, du setzt cid=9 mit Position N auch beim Schaltaktor ein. Für die Schaltaktoren gibt es doch den CID 10 für AN und 11 für AUS. Ist der CID 10 bzw. 11 für den Datenpunkt STATE nicht besser geeignet? Dummerweise gibt das JSON als Rückmeldung trotzdem den Wert als "POSITION" aus.

                Also sieht es dann so aus:

                else if (controller == 'state') { // control via state e.g. Universal-Aktor switch (100 ist true, <100 is false);
                        if (input.search(/(true)|(false)\b/gmi) != -1) { // check if "true" or "false"
                            valid = true;
                            if (input || input === 'true') { // switch is on
                                url = 'http://' + ip + '/deviceajax.do?cid=10&did=' + deviceid + '&command=1';
                            } else url = 'http://' + ip + '/deviceajax.do?cid=11&did=' + deviceid + '&command=1'; // switch is off
                            adapter.log.debug('Input: ' + input + ' URL: '  + url);
                        } else valid = false;
                    }
                
                1 Reply Last reply Reply Quote 0
                • P
                  pix last edited by

                  Du hast recht. Macht ja auch Sinn. Ich war immer noch überzeugt, true sei Position 100, false sei 0; auch beim Setzen. Aber Cid ist ja genau dafür da. Mach ich morgen!

                  Muss mir wohl auch mal so einen Aktor zulegen.

                  Gute Nacht,

                  Pix

                  Gesendet mit Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • P
                    pustekuchen last edited by

                    @pix:

                    Du hast recht. Macht ja auch Sinn. Ich war immer noch überzeugt, true sei Position 100, false sei 0; auch beim Setzen. Aber Cid ist ja genau dafür da. Mach ich morgen!

                    Muss mir wohl auch mal so einen Aktor zulegen.

                    Gute Nacht,

                    Pix

                    Gesendet mit Tapatalk `
                    Cool. Kannst du evtl. noch die Synctime in den Settings einstellbar machen? Und was noch schick wäre: Eine Fehlermeldung, wenn der Homepilot nicht erreichbar ist, oder ist das schon drin? Ich würde gerne eine "Servicemeldung" à la Homematic einblenden lassen, wenn die Verbindung nicht möglich ist.

                    1 Reply Last reply Reply Quote 0
                    • L
                      leo013 last edited by

                      Hallo Pix,

                      das Design von deinem widget passt leider nicht zu meiner Visu 😉

                      997_iobroker1.jpg

                      997_iobroker2.jpg

                      Ich glaube das Widget, das ich nutze ist von Bluefox.

                      Im Moment kann ich mit der Tastensteuerung leben, die Gurtwickler laufen automatisch über

                      die Dämmerungs- und Sonnenaufgangsfunktion, sowie Beschattung bei starken Sonneneinfall.

                      Ich habe fast meine komplette Dashui-Visu auf iobroker umgestellt, muss nur noch meine beiden Homeduino einbinden

                      Nochmals herzlichen Dank für die schnelle Umsetzung!

                      Gruß

                      Wolfgang

                      1 Reply Last reply Reply Quote 0
                      • P
                        pix last edited by

                        Hallo,

                        0.0.5 ist fertig

                        https://github.com/Pix–-/ioBroker.homepilot

                        Neu:

                        • Die Dauer in Sekunden zwischen den Synchronisierungen Homepilot <> ioBroker lässt sich nun einstellen (default 12s).

                        • Switches/Schalter (Serie 43 und 46) werden nun per Commad ID gesetzt, aber noch über Position/Level aus Homepilot gelesen.

                        • Datenpunkt UNREACH erstellt.

                          Wenn Homepilot nicht erreichbar, wird UNREACH auf true gesetzt (zB für Alarmierung). Bitte prüfen, ob das Setzen auf true bei Adapter Installation bis zum ersten einlesen schon die Alarmierung auslöst. Dann muss ich das ändern.

                        • Readme aufgehübscht

                        Gruß

                        Pix

                        1 Reply Last reply Reply Quote 0
                        • M
                          mdsv last edited by

                          Hallo,

                          bei mir geht die Installation leider nicht. Sowohl über die GUI, als auch die Konsole.

                          Müsste es gehen????

                          404 https://registry.npmjs.org/iobroker.homepilot

                          npm ERR! TypeError: Cannot read property 'latest' of undefined

                          npm ERR! at next (/usr/local/lib/node_modules/npm/lib/cache.js:687:35)

                          npm ERR! at /usr/local/lib/node_modules/npm/lib/cache.js:675:5

                          npm ERR! at saved (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/get.js:142:7)

                          npm ERR! at /usr/local/lib/node_modules/npm/node_modules/graceful-fs/polyfills.js:133:7

                          npm ERR! at Object.oncomplete (fs.js:107:15)

                          npm ERR! If you need help, you may report this log at:

                          npm ERR! <http://github.com/isaacs/npm/issues>

                          npm ERR! or email it to:

                          npm ERR! npm-@googlegroups.com

                          1 Reply Last reply Reply Quote 0
                          • P
                            pustekuchen last edited by

                            @pix:

                            Hallo,

                            0.0.5 ist fertig

                            https://github.com/Pix–-/ioBroker.homepilot

                            Neu:

                            • Die Dauer in Sekunden zwischen den Synchronisierungen Homepilot <> ioBroker lässt sich nun einstellen (default 12s).

                            • Switches/Schalter (Serie 43 und 46) werden nun per Commad ID gesetzt, aber noch über Position/Level aus Homepilot gelesen.

                            • Datenpunkt UNREACH erstellt.

                              Wenn Homepilot nicht erreichbar, wird UNREACH auf true gesetzt (zB für Alarmierung). Bitte prüfen, ob das Setzen auf true bei Adapter Installation bis zum ersten einlesen schon die Alarmierung auslöst. Dann muss ich das ändern.

                            • Readme aufgehübscht

                            Gruß

                            Pix `
                            Neue Version installiert, leider geht das ausschalten der Schaltaktoren über STATE false immer noch nicht. Edit: Einschalten geht, aber ausschalten dann nicht mehr.

                            1 Reply Last reply Reply Quote 0
                            • P
                              pix last edited by

                              Seltsam, hier der Code, der das Schalten übernimmt:

                              else if (controller == 'state') { // control via state e.g. Universal-Aktor switch
                                      if (input.search(/(true)|(false)\b/gmi) != -1) { // check if "true" or "false"
                                          valid = true;
                                          newcid = (input || input === 'true') ? '10' : '11'; // hier sollte bei 'false' eigentlich '11' gesetzt werden
                                          if (valid) url = 'http://' + ip + '/deviceajax.do?did=' + deviceid + '&cid=' + newcid + '&command=1'; // switch ON / OFF
                                          adapter.log.debug('Switch ' + deviceid + ' new status detected: ' + input + ' URL: '  + url);
                                      } else valid = false;
                                  } 
                              

                              Was sagt das Log (hier 6. Zeile, also Adapter bitte auf debug stellen)?

                              Gruß

                              Pix

                              1 Reply Last reply Reply Quote 0
                              • P
                                pustekuchen last edited by

                                Log sagt:

                                ! ````
                                homepilot-0 2016-06-19 15:09:24.490 warn Wrong type of data input. Please try again
                                homepilot-0 2016-06-19 15:09:20.895 warn Wrong type of data input. Please try again
                                homepilot-0 2016-06-19 15:09:19.959 info Command sent to Homepilot because "false" written to State "homepilot.0.devices.Steckdosenaktor.10006.state"
                                homepilot-0 2016-06-19 15:09:13.213 warn Wrong type of data input. Please try again
                                homepilot-0 2016-06-19 15:09:12.220 info Command sent to Homepilot because "true" written to State "homepilot.0.devices.Steckdosenaktor.10006.state"
                                homepilot-0 2016-06-19 15:09:09.915 warn Wrong type of data input. Please try again
                                homepilot-0 2016-06-19 15:08:57.730 warn Wrong type of data input. Please try again

                                Hätte ich jetzt seit dem du geantwortet hast nochmal updaten müssen?
                                1 Reply Last reply Reply Quote 0
                                • P
                                  pix last edited by

                                  Nein, hätest du nicht. Habe nichts verändert.

                                  Du sagst ja, dass das Einschalten funktioniert, nur das Ausschalten nicht.

                                  Also true geht, false nicht.

                                  Seltsam ist ja, dass durch diese Zeile

                                  newcid = (input || input === 'true') ? '10' : '11'; // hier sollte bei 'false' eigentlich '11' gesetzt werden
                                  

                                  genau nach "true" gefragt wird (sowohl als boolean, als auch als Zeichenkette) und falls kein true kommt, und dazu gehört 'false' ja, dann soll die 11 gesetzt werden (für AUS).

                                  Mir fehlt nur diese Zeile in der Logausgabe:

                                  adapter.log.debug('Switch ' + deviceid + ' new status detected: ' + input + ' URL: '  + url);
                                  

                                  Deshalb bitte mal den Adapter auf DEBUG stellen (Reiter Instanzen, Expertenmodus. Logstufe) 261_bildschirmfoto_2016-06-19_um_22.03.12.jpg

                                  Gruß

                                  Pix

                                  1 Reply Last reply Reply Quote 0
                                  • P
                                    pustekuchen last edited by

                                    Ok, hier die Debug-Ausgabe nachdem ich ausgeschaltet habe:

                                    homepilot.0 Wrong type of data input. Please try again
                                    homepilot.0	2016-06-19 22:25:51.217	debug	homepilot.0 State: state device: 10006 command: 0
                                    homepilot.0	2016-06-19 22:25:51.216	debug	homepilot.0 input value: 0
                                    homepilot.0	2016-06-19 22:25:51.216	debug	homepilot.0 stateChange homepilot.0.devices.Steckdosenaktor.10006.state {"val":"0","ack":false,"ts":1466367951198,"q":0,"from":"system.adapter.web.0","lc":1466367951198}
                                    homepilot.0	2016-06-19 22:25:51.214	debug	inMem message homepilot.0.* homepilot.0.devices.Steckdosenaktor.10006.state
                                    homepilot.0	2016-06-19 22:25:50.318	info	homepilot.0 Command sent to Homepilot because "false" written to State "homepilot.0.devices.Steckdosenaktor.10006.state"
                                    homepilot.0	2016-06-19 22:25:50.318	debug	homepilot.0 Switch 10006 new status detected: false URL: http://192.168.178.5/deviceajax.do?did=10006&cid=10&command=1
                                    homepilot.0	2016-06-19 22:25:50.317	debug	homepilot.0 State: state device: 10006 command: false
                                    homepilot.0	2016-06-19 22:25:50.317	debug	homepilot.0 input value: false
                                    homepilot.0	2016-06-19 22:25:50.317	debug	homepilot.0 stateChange homepilot.0.devices.Steckdosenaktor.10006.state {"val":false,"ack":false,"ts":1466367950226,"q":0,"from":"system.adapter.web.0","lc":1466367950226}
                                    homepilot.0	2016-06-19 22:25:50.315	debug	inMem message homepilot.0.* homepilot.0.devices.Steckdosenaktor.10006.state
                                    homepilot.0	2016-06-19 22:25:46.005	debug	homepilot.0 Homepilot adapter started...
                                    homepilot.0	2016-06-19 22:25:46.005	debug	homepilot.0 Homepilot station and ioBroker synchronize every 12s
                                    homepilot.0	2016-06-19 22:25:46.004	debug	homepilot.0 initializing objects
                                    
                                    

                                    Edit: Ok, jetzt habe ich herausgefunden, dass der CID falsch ist, bei STATE false wird 10, also Einschalten benutzt anstatt 11.

                                    Gesendet von meinem iPad mit Tapatalk HD

                                    1 Reply Last reply Reply Quote 0
                                    • P
                                      pix last edited by

                                      Vielen Dank für die Rückmeldung. Jetzt habe ich den Fehler wohl gefunden:

                                      newcid = (input || input === 'true') ? '10' : '11';
                                      

                                      Input ist ja kein Typ boolean, sondern ein Typ String. Deshalb wird die obige Abfrage immer '10' ergeben, da auch der übergebene String 'false' eben ein String ist und die Variable füllt. Es wird ja nur gerpüft, ob was drin steht, erst nach dem ODER wird geprüft, obt das auch "true" ist.

                                      Da ich oben weiter eh schon die Regex-Abfrage für plausible Eingaben habe, konnte ich die natürlich weiter unten auch nutzen.

                                      if (input.search(/(true)(EIN)(AN)(ON)|([10-11])|(false)(AUS)(OFF)\b\b/gmi) != -1) { // check if "true" or "false"
                                                  valid = true;
                                                  if (input.search(/(true)(EIN)(AN)(ON)|(10)\b\b/gmi) != -1 ) newcid = '10'; 
                                                  if (input.search(/(false)(AUS)(OFF)|(11)\b\b/gmi) != -1 ) newcid = '11'; 
                                                  url = 'http://' + ip + '/deviceajax.do?did=' + deviceid + '&cid=' + newcid + '&command=1'; // switch ON / OFF
                                                  adapter.log.debug('Switch ' + deviceid + ' new status detected: ' + input + ' URL: '  + url);
                                              } else valid = false;
                                      
                                      

                                      Es sind jetzt eben auch die in der https://github.com/Pix–-/ioBroker.homepilot/blob/master/README.md#command-id aufgezählten CID Anweisungen möglich (zB "AUS" oder "off" oder "EiN", wenn es sein muss 🙂 )

                                      Neue Version 0.0.6 mit Korrektur ist da.

                                      https://github.com/Pix–-/ioBroker.homepilot

                                      Gruß

                                      Pix

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        pustekuchen last edited by

                                        Nach Update kann ich jetzt nur noch an- der ausschalten, wenn ich "10" oder "11" in STATE schreibe. "true" oder "false" oder "AN" oder "AUS", gehen nicht.

                                        Geht nicht:

                                        ! ````
                                        homepilot.0 2016-06-20 15:11:40.520 debug homepilot.0 finished reading Homepilot Data
                                        homepilot.0 2016-06-20 15:11:40.518 debug homepilot.0 reading homepilot JSON ...
                                        TypeError: 2016-06-20 13:11:36.854 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
                                        TypeError: 2016-06-20 13:11:36.854 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                                        TypeError: 2016-06-20 13:11:36.854 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                                        TypeError: 2016-06-20 13:11:36.854 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
                                        TypeError: 2016-06-20 13:11:36.854 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
                                        TypeError: 2016-06-20 13:11:36.854 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                                        TypeError: 2016-06-20 13:11:36.854 error at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
                                        TypeError: 2016-06-20 13:11:36.854 error at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2036:80)
                                        TypeError: 2016-06-20 13:11:36.854 error at Object.utils.adapter.stateChange (/opt/iobroker/node_modules/iobroker.homepilot/main.js:22:9)
                                        TypeError: 2016-06-20 13:11:36.854 error at controlHomepilot (/opt/iobroker/node_modules/iobroker.homepilot/main.js:166:23)
                                        TypeError: 2016-06-20 13:11:36.854 error Cannot read property 'warn' of undefined
                                        message 2016-06-20 13:11:36.836 error homepilot.0.devices.Steckdosenaktor.10006.state [object Object] Cannot read property 'warn' of undefined
                                        homepilot-0 2016-06-20 13:11:36.832 debug State: state device: 10006 command: true
                                        homepilot-0 2016-06-20 13:11:36.828 debug input value: true
                                        homepilot-0 2016-06-20 13:11:36.826 debug stateChange homepilot.0.devices.Steckdosenaktor.10006.state {"val":true,"ack":false,"ts":1466428296807,"q":0,"from":"system.adapter.admin.0","lc":1466428296807}
                                        inMem 2016-06-20 13:11:36.816 debug message homepilot.0.* homepilot.0.devices.Steckdosenaktor.10006.state val=true, ack=false, ts=1466428296807, q=0, from=system.adapter.admin.0, lc=1466428296807
                                        homepilot-0 2016-06-20 13:11:28.451 debug Homepilot adapter started...
                                        homepilot-0 2016-06-20 13:11:28.450 debug Homepilot station and ioBroker synchronize every 12s
                                        homepilot-0 2016-06-20 13:11:28.446 debug initializing objects
                                        homepilot-0 2016-06-20 13:11:28.431 info starting. Version 0.0.6 in /opt/iobroker/node_modules/iobroker.homepilot
                                        homepilot-0 2016-06-20 13:11:28.208 debug statesDB connected
                                        homepilot-0 2016-06-20 13:11:28.158 debug objectDB connected

                                        
                                        Geht schon: (mit "10")
                                        
                                        >! ````
                                        homepilot.0	2016-06-20 15:14:04.759	debug	homepilot.0 reading homepilot JSON ...
                                        homepilot-0	2016-06-20 13:14:01.388	info	Command sent to Homepilot because "10" written to State "homepilot.0.devices.Steckdosenaktor.10006.state"
                                        homepilot-0	2016-06-20 13:14:01.377	debug	Switch 10006 new status detected: 10 URL: http://192.168.178.5/deviceajax.do?did=10006&cid=10&command=1
                                        homepilot-0	2016-06-20 13:14:01.374	debug	State: state device: 10006 command: 10
                                        homepilot-0	2016-06-20 13:14:01.374	debug	input value: 10
                                        homepilot-0	2016-06-20 13:14:01.373	debug	stateChange homepilot.0.devices.Steckdosenaktor.10006.state {"val":10,"ack":false,"ts":1466428441359,"q":0,"from":"system.adapter.admin.0","lc":1466428441359}
                                        inMem	2016-06-20 13:14:01.370	debug	message homepilot.0.* homepilot.0.devices.Steckdosenaktor.10006.state val=10, ack=false, ts=1466428441359, q=0, from=system.adapter.admin.0, lc=1466428441359
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • P
                                          pix last edited by

                                          Danke für die Rückmeldung. Tut mir leid, waren Flüchtigkeitsfehler. Hab schon einen Schreibfehler gefunden: "adapter.lo.warn"

                                          Ausserdem fehlte in der RegEx Abfrage wohl einige ODER :oops:

                                          Ich lade mal schnell eine neue Version hoch 0.0.7. 8-)

                                          Gruß

                                          Pix

                                          1 Reply Last reply Reply Quote 0
                                          • P
                                            pustekuchen last edited by

                                            @pix:

                                            Danke für die Rückmeldung. Tut mir leid, waren Flüchtigkeitsfehler. Hab schon einen Schreibfehler gefunden: "adapter.lo.warn"

                                            Ausserdem fehlte in der RegEx Abfrage wohl einige ODER :oops:

                                            Ich lade mal schnell eine neue Version hoch 0.0.7. 8-)

                                            Gruß

                                            Pix `
                                            Danke, jetzt läufts! 😉

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            961
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            21
                                            125
                                            17421
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo