NEWS
Javascript VIS/Widgets vs ioBroker/Blockly
-
Guten Abend,
ich bin noch ein absoluter Neuling habe heute mein erstes Script erstellt und will damit über einen Boolean Button einen virtuellen Homematic IP Schalter schalten. 0 = short_press, 1 = long_press. Nachdem ich das Script in VIS Oberfläche bei Widget/Einstellungen/Scripte eingefügt habe, konnte ich das Script nicht zum laufen bringen. Beim betätigen des Button im Testmodus, kam es zu keiner Reaktion.
Nach längerer Suche habe ich dann Blockly für den ioBroker installiert, dort das Script 1:1 kopiert und gestartet. Zu meiner Überraschung funktioniert der Button jetzt wie gewünscht. Sobald ich das Script im
ioBroker stoppe keine Reaktion mehr.Reicht es nicht aus ein Script im VIS bei den Widgets einzufügen bzw. muss ich da noch etwas anderes machen? Oder müssen die Scripte immer im ioBroker gestartet werden?
Anbei noch das entsprechende Script:
on({id:"vis.0.datapoints.Button_South", change: 'any' }, function (obj) { if (obj.newState.val === '1') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_SHORT",true); console.log('Wert' + obj.newState.val); } if ( obj.newState.val === '0') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_LONG",true); console.log('Wert' + obj.newState.val); } console.log('Wert' + obj.newState.val); } );Danke für eure Hilfe.
-
Guten Abend,
ich bin noch ein absoluter Neuling habe heute mein erstes Script erstellt und will damit über einen Boolean Button einen virtuellen Homematic IP Schalter schalten. 0 = short_press, 1 = long_press. Nachdem ich das Script in VIS Oberfläche bei Widget/Einstellungen/Scripte eingefügt habe, konnte ich das Script nicht zum laufen bringen. Beim betätigen des Button im Testmodus, kam es zu keiner Reaktion.
Nach längerer Suche habe ich dann Blockly für den ioBroker installiert, dort das Script 1:1 kopiert und gestartet. Zu meiner Überraschung funktioniert der Button jetzt wie gewünscht. Sobald ich das Script im
ioBroker stoppe keine Reaktion mehr.Reicht es nicht aus ein Script im VIS bei den Widgets einzufügen bzw. muss ich da noch etwas anderes machen? Oder müssen die Scripte immer im ioBroker gestartet werden?
Anbei noch das entsprechende Script:
on({id:"vis.0.datapoints.Button_South", change: 'any' }, function (obj) { if (obj.newState.val === '1') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_SHORT",true); console.log('Wert' + obj.newState.val); } if ( obj.newState.val === '0') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_LONG",true); console.log('Wert' + obj.newState.val); } console.log('Wert' + obj.newState.val); } );Danke für eure Hilfe.
-
Guten Abend,
ich bin noch ein absoluter Neuling habe heute mein erstes Script erstellt und will damit über einen Boolean Button einen virtuellen Homematic IP Schalter schalten. 0 = short_press, 1 = long_press. Nachdem ich das Script in VIS Oberfläche bei Widget/Einstellungen/Scripte eingefügt habe, konnte ich das Script nicht zum laufen bringen. Beim betätigen des Button im Testmodus, kam es zu keiner Reaktion.
Nach längerer Suche habe ich dann Blockly für den ioBroker installiert, dort das Script 1:1 kopiert und gestartet. Zu meiner Überraschung funktioniert der Button jetzt wie gewünscht. Sobald ich das Script im
ioBroker stoppe keine Reaktion mehr.Reicht es nicht aus ein Script im VIS bei den Widgets einzufügen bzw. muss ich da noch etwas anderes machen? Oder müssen die Scripte immer im ioBroker gestartet werden?
Anbei noch das entsprechende Script:
on({id:"vis.0.datapoints.Button_South", change: 'any' }, function (obj) { if (obj.newState.val === '1') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_SHORT",true); console.log('Wert' + obj.newState.val); } if ( obj.newState.val === '0') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_LONG",true); console.log('Wert' + obj.newState.val); } console.log('Wert' + obj.newState.val); } );Danke für eure Hilfe.
-
Guten Abend,
ich bin noch ein absoluter Neuling habe heute mein erstes Script erstellt und will damit über einen Boolean Button einen virtuellen Homematic IP Schalter schalten. 0 = short_press, 1 = long_press. Nachdem ich das Script in VIS Oberfläche bei Widget/Einstellungen/Scripte eingefügt habe, konnte ich das Script nicht zum laufen bringen. Beim betätigen des Button im Testmodus, kam es zu keiner Reaktion.
Nach längerer Suche habe ich dann Blockly für den ioBroker installiert, dort das Script 1:1 kopiert und gestartet. Zu meiner Überraschung funktioniert der Button jetzt wie gewünscht. Sobald ich das Script im
ioBroker stoppe keine Reaktion mehr.Reicht es nicht aus ein Script im VIS bei den Widgets einzufügen bzw. muss ich da noch etwas anderes machen? Oder müssen die Scripte immer im ioBroker gestartet werden?
Anbei noch das entsprechende Script:
on({id:"vis.0.datapoints.Button_South", change: 'any' }, function (obj) { if (obj.newState.val === '1') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_SHORT",true); console.log('Wert' + obj.newState.val); } if ( obj.newState.val === '0') { setState("hm-rpc.0.001F4569A8E3FF.49.PRESS_LONG",true); console.log('Wert' + obj.newState.val); } console.log('Wert' + obj.newState.val); } );Danke für eure Hilfe.
@rokket
Entschuldigung. Du willst ja mit dem Button zwei unterschiedliche Datenpunkte nutzen:Dann brauchst du einen selbst erstellten Datenpunkt welchen du als ObjektID in das VisWidget einsetzt.
Dazu ein Blockly wie oben von dir geschrieben.
In VIS brauchst du KEIN weiteres Script