Seite 1 von 1

Vorhandenes Script in einer Rule verwenden

Verfasst: 7. Feb 2022 19:51
von guinnes
Hallo
Ich habe mehrere Scripts erstellt, die ich Rules wiederverwenden möchte. Bei der Konfiguration der Rules unter dem Punkt "Vorhandes Script ausführen" wird mir aber keines meiner Scripte angeboten. Kann es sein, daß das immer noch nicht fertig ist ?
Ich habe in dem englischsprachigen Openhab-Forum eine Anleitung gefunden, danach muß ich eine Fabrik vor dem Aufruf des Scriptes bauen :

Code: Alles auswählen

var FrameworkUtil = Java.type("org.osgi.framework.FrameworkUtil");
var _bundle = FrameworkUtil.getBundle(scriptExtension.class);
var bundle_context = _bundle.getBundleContext()
var classname = "org.openhab.core.automation.RuleManager"
var RuleManager_Ref = bundle_context.getServiceReference(classname);
var RuleManager = bundle_context.getService(RuleManager_Ref);
RuleManager.runNow('httpRequest');
Warum gibt es keinen HTTPRequest im Blocky ( gibts im IOBroker ja auch )

Re: Vorhandenes Script in einer Rule verwenden

Verfasst: 7. Feb 2022 23:53
von udo1toni
guinnes hat geschrieben: 7. Feb 2022 19:51 Warum gibt es keinen HTTPRequest im Blocky ( gibts im IOBroker ja auch )
Du sollst den Namen des Herrn, deines Gottes, nicht mißbrauchen.
;)

Im Ernst: Kein System ist perfekt. Für mich könnte der ganze Blockly Kram raus und in die Tonne, damit wird nur suggeriert, der Anwender könne leichter regeln erstellen, dabei geht es nur darum, dass der Anwender eine Befehlsreferenz in grafischer Form vor sich hat, die bekommt man mit VSCode auch für die DSL.

Da sendHttpRequest eine Core Action ist (vgl. https://www.openhab.org/docs/configurat ... tp-actions), wäre es sicher wünschenswert, dass dies auch in Blockly abgebildet wird. Frag halt mal im englischen Forum nach... ;) vielleicht erbarmt sich jemand und baut es ein.